xref: /openbsd/usr.bin/dig/lib/isc/include/isc/result.h (revision 76e675f5)
1 /*
2  * Copyright (C) Internet Systems Consortium, Inc. ("ISC")
3  *
4  * Permission to use, copy, modify, and/or distribute this software for any
5  * purpose with or without fee is hereby granted, provided that the above
6  * copyright notice and this permission notice appear in all copies.
7  *
8  * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
9  * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
10  * AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
11  * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12  * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
13  * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14  * PERFORMANCE OF THIS SOFTWARE.
15  */
16 
17 /* $Id: result.h,v 1.3 2020/02/19 20:57:10 jung Exp $ */
18 
19 #ifndef ISC_RESULT_H
20 #define ISC_RESULT_H 1
21 
22 /*! \file isc/result.h */
23 
24 #include <isc/types.h>
25 
26 #define ISC_R_SUCCESS			0	/*%< success */
27 #define ISC_R_NOMEMORY			1	/*%< out of memory */
28 #define ISC_R_TIMEDOUT			2	/*%< timed out */
29 #define ISC_R_NOTHREADS			3	/*%< no available threads */
30 #define ISC_R_ADDRNOTAVAIL		4	/*%< address not available */
31 #define ISC_R_ADDRINUSE			5	/*%< address in use */
32 #define ISC_R_NOPERM			6	/*%< permission denied */
33 #define ISC_R_NOCONN			7	/*%< no pending connections */
34 #define ISC_R_NETUNREACH		8	/*%< network unreachable */
35 #define ISC_R_HOSTUNREACH		9	/*%< host unreachable */
36 #define ISC_R_NETDOWN			10	/*%< network down */
37 #define ISC_R_HOSTDOWN			11	/*%< host down */
38 #define ISC_R_CONNREFUSED		12	/*%< connection refused */
39 #define ISC_R_NORESOURCES		13	/*%< not enough free resources */
40 #define ISC_R_EOF			14	/*%< end of file */
41 #define ISC_R_BOUND			15	/*%< socket already bound */
42 #define ISC_R_LOCKBUSY			17	/*%< lock busy */
43 #define ISC_R_EXISTS			18	/*%< already exists */
44 #define ISC_R_NOSPACE			19	/*%< ran out of space */
45 #define ISC_R_CANCELED			20	/*%< operation canceled */
46 #define ISC_R_NOTBOUND			21	/*%< socket is not bound */
47 #define ISC_R_SHUTTINGDOWN		22	/*%< shutting down */
48 #define ISC_R_NOTFOUND			23	/*%< not found */
49 #define ISC_R_UNEXPECTEDEND		24	/*%< unexpected end of input */
50 #define ISC_R_FAILURE			25	/*%< generic failure */
51 #define ISC_R_IOERROR			26	/*%< I/O error */
52 #define ISC_R_NOTIMPLEMENTED		27	/*%< not implemented */
53 #define ISC_R_UNBALANCED		28	/*%< unbalanced parentheses */
54 #define ISC_R_NOMORE			29	/*%< no more */
55 #define ISC_R_INVALIDFILE		30	/*%< invalid file */
56 #define ISC_R_BADBASE64			31	/*%< bad base64 encoding */
57 #define ISC_R_UNEXPECTEDTOKEN		32	/*%< unexpected token */
58 #define ISC_R_QUOTA			33	/*%< quota reached */
59 #define ISC_R_UNEXPECTED		34	/*%< unexpected error */
60 #define ISC_R_ALREADYRUNNING		35	/*%< already running */
61 #define ISC_R_IGNORE			36	/*%< ignore */
62 #define ISC_R_MASKNONCONTIG             37	/*%< addr mask not contiguous */
63 #define ISC_R_FILENOTFOUND		38	/*%< file not found */
64 #define ISC_R_FILEEXISTS		39	/*%< file already exists */
65 #define ISC_R_NOTCONNECTED		40	/*%< socket is not connected */
66 #define ISC_R_RANGE			41	/*%< out of range */
67 #define ISC_R_NOENTROPY			42	/*%< out of entropy */
68 #define ISC_R_MULTICAST			43	/*%< invalid use of multicast */
69 #define ISC_R_NOTFILE			44	/*%< not a file */
70 #define ISC_R_NOTDIRECTORY		45	/*%< not a directory */
71 #define ISC_R_QUEUEFULL			46	/*%< queue is full */
72 #define ISC_R_FAMILYMISMATCH		47	/*%< address family mismatch */
73 #define ISC_R_FAMILYNOSUPPORT		48	/*%< AF not supported */
74 #define ISC_R_BADHEX			49	/*%< bad hex encoding */
75 #define ISC_R_TOOMANYOPENFILES		50	/*%< too many open files */
76 #define ISC_R_NOTBLOCKING		51	/*%< not blocking */
77 #define ISC_R_UNBALANCEDQUOTES		52	/*%< unbalanced quotes */
78 #define ISC_R_INPROGRESS		53	/*%< operation in progress */
79 #define ISC_R_CONNECTIONRESET		54	/*%< connection reset */
80 #define ISC_R_SOFTQUOTA			55	/*%< soft quota reached */
81 #define ISC_R_BADNUMBER			56	/*%< not a valid number */
82 #define ISC_R_DISABLED			57	/*%< disabled */
83 #define ISC_R_MAXSIZE			58	/*%< max size */
84 #define ISC_R_BADADDRESSFORM		59	/*%< invalid address format */
85 #define ISC_R_BADBASE32			60	/*%< bad base32 encoding */
86 #define ISC_R_UNSET			61	/*%< unset */
87 #define ISC_R_MULTIPLE			62	/*%< multiple */
88 #define ISC_R_WOULDBLOCK		63	/*%< would block */
89 
90 /*% Not a result code: the number of results. */
91 #define ISC_R_NRESULTS 			64
92 
93 const char *
94 isc_result_totext(isc_result_t);
95 /*%<
96  * Convert an isc_result_t into a string message describing the result.
97  */
98 
99 isc_result_t
100 isc_result_register(unsigned int base, unsigned int nresults,
101 		    const char **text, int set);
102 
103 #endif /* ISC_RESULT_H */
104