1 /*	$NetBSD: result.h,v 1.4 2022/04/03 01:10:59 christos Exp $	*/
2 
3 /* result.h
4  */
5 
6 /*
7  * Copyright (C) 2009-2022 Internet Systems Consortium, Inc. ("ISC")
8  *
9  * This Source Code Form is subject to the terms of the Mozilla Public
10  * License, v. 2.0. If a copy of the MPL was not distributed with this
11  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
12  *
13  * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
14  * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
15  * AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
16  * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
17  * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
18  * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19  * PERFORMANCE OF THIS SOFTWARE.
20  *
21  *   Internet Systems Consortium, Inc.
22  *   PO Box 360
23  *   Newmarket, NH 03857 USA
24  *   <info@isc.org>
25  *   https://www.isc.org/
26  */
27 
28 #ifndef DHCP_RESULT_H
29 #define DHCP_RESULT_H 1
30 
31 #include <isc/lang.h>
32 #include <isc/resultclass.h>
33 #include <isc/types.h>
34 
35 #include <isc/result.h>
36 
37 /*
38  * DHCP result codes
39  */
40 
41 /*
42  * In the previous code the results started at 36
43  * rather than ISC_RESULTCLASS_DHCP + 0
44  * ISC_R_NOTCONNECTED was + 4 (40), it has been superseded by the isc version
45  */
46 
47 #define DHCP_R_HOSTUNKNOWN	(ISC_RESULTCLASS_DHCP + 0)
48 #define DHCP_R_VERSIONMISMATCH	(ISC_RESULTCLASS_DHCP + 1)
49 #define DHCP_R_PROTOCOLERROR	(ISC_RESULTCLASS_DHCP + 2)
50 #define DHCP_R_INVALIDARG	(ISC_RESULTCLASS_DHCP + 3)
51 #define DHCP_R_NOTYET		(ISC_RESULTCLASS_DHCP + 4)
52 #define DHCP_R_UNCHANGED	(ISC_RESULTCLASS_DHCP + 5)
53 #define DHCP_R_MULTIPLE		(ISC_RESULTCLASS_DHCP + 6)
54 #define DHCP_R_KEYCONFLICT	(ISC_RESULTCLASS_DHCP + 7)
55 #define DHCP_R_BADPARSE		(ISC_RESULTCLASS_DHCP + 8)
56 #define DHCP_R_NOKEYS		(ISC_RESULTCLASS_DHCP + 9)
57 #define DHCP_R_KEY_UNKNOWN	(ISC_RESULTCLASS_DHCP + 10)
58 #define DHCP_R_INVALIDKEY	(ISC_RESULTCLASS_DHCP + 11)
59 #define DHCP_R_INCOMPLETE	(ISC_RESULTCLASS_DHCP + 12)
60 #define DHCP_R_FORMERR		(ISC_RESULTCLASS_DHCP + 13)
61 #define DHCP_R_SERVFAIL		(ISC_RESULTCLASS_DHCP + 14)
62 #define DHCP_R_NXDOMAIN		(ISC_RESULTCLASS_DHCP + 15)
63 #define DHCP_R_NOTIMPL		(ISC_RESULTCLASS_DHCP + 16)
64 #define DHCP_R_REFUSED		(ISC_RESULTCLASS_DHCP + 17)
65 #define DHCP_R_YXDOMAIN		(ISC_RESULTCLASS_DHCP + 18)
66 #define DHCP_R_YXRRSET		(ISC_RESULTCLASS_DHCP + 19)
67 #define DHCP_R_NXRRSET		(ISC_RESULTCLASS_DHCP + 20)
68 #define DHCP_R_NOTAUTH		(ISC_RESULTCLASS_DHCP + 21)
69 #define DHCP_R_NOTZONE		(ISC_RESULTCLASS_DHCP + 22)
70 #define DHCP_R_BADSIG		(ISC_RESULTCLASS_DHCP + 23)
71 #define DHCP_R_BADKEY		(ISC_RESULTCLASS_DHCP + 24)
72 #define DHCP_R_BADTIME		(ISC_RESULTCLASS_DHCP + 25)
73 #define DHCP_R_NOROOTZONE	(ISC_RESULTCLASS_DHCP + 26)
74 #define DHCP_R_DESTADDRREQ	(ISC_RESULTCLASS_DHCP + 27)
75 #define DHCP_R_CROSSZONE	(ISC_RESULTCLASS_DHCP + 28)
76 #define DHCP_R_NO_TSIG		(ISC_RESULTCLASS_DHCP + 29)
77 #define DHCP_R_NOT_EQUAL	(ISC_RESULTCLASS_DHCP + 30)
78 #define DHCP_R_CONNRESET	(ISC_RESULTCLASS_DHCP + 31)
79 #define DHCP_R_UNKNOWNATTRIBUTE	(ISC_RESULTCLASS_DHCP + 32)
80 
81 #define DHCP_R_NRESULTS 	33	/*%< Number of results */
82 
83 // Included for historical reasons, these should be removed as
84 // soon as reasonable
85 #ifdef INCLUDE_OLD_DHCP_ISC_ERROR_CODES
86 #define ISC_R_HOSTUNKNOWN	DHCP_R_HOSTUNKNOWN
87 #define ISC_R_VERSIONMISMATCH	DHCP_R_VERSIONMISMATCH
88 #define ISC_R_PROTOCOLERROR	DHCP_R_PROTOCOLERROR
89 #define ISC_R_INVALIDARG	DHCP_R_INVALIDARG
90 #define ISC_R_NOTYET		DHCP_R_NOTYET
91 #define ISC_R_UNCHANGED		DHCP_R_UNCHANGED
92 #define ISC_R_KEYCONFLICT	DHCP_R_KEYCONFLICT
93 #define ISC_R_BADPARSE		DHCP_R_BADPARSE
94 #define ISC_R_NOKEYS		DHCP_R_NOKEYS
95 #define ISC_R_KEY_UNKNOWN	DHCP_R_KEY_UNKNOWN
96 #define ISC_R_INVALIDKEY	DHCP_R_INVALIDKEY
97 #define ISC_R_INCOMPLETE	DHCP_R_INCOMPLETE
98 #define ISC_R_FORMERR		DHCP_R_FORMERR
99 #define ISC_R_SERVFAIL		DHCP_R_SERVFAIL
100 #define ISC_R_NXDOMAIN		DHCP_R_NXDOMAIN
101 #define ISC_R_NOTIMPL		DHCP_R_NOTIMPL
102 #define ISC_R_REFUSED		DHCP_R_REFUSED
103 #define ISC_R_YXDOMAIN		DHCP_R_YXDOMAIN
104 #define ISC_R_YXRRSET		DHCP_R_YXRRSET
105 #define ISC_R_NXRRSET		DHCP_R_NXRRSET
106 #define ISC_R_NOTAUTH		DHCP_R_NOTAUTH
107 #define ISC_R_NOTZONE		DHCP_R_NOTZONE
108 #define ISC_R_BADSIG		DHCP_R_BADSIG
109 #define ISC_R_BADKEY		DHCP_R_BADKEY
110 #define ISC_R_BADTIME		DHCP_R_BADTIME
111 #define ISC_R_NOROOTZONE	DHCP_R_NOROOTZONE
112 #define ISC_R_DESTADDRREQ	DHCP_R_DESTADDRREQ
113 #define ISC_R_CROSSZONE		DHCP_R_CROSSZONE
114 #define ISC_R_NO_TSIG		DHCP_R_NO_TSIG
115 #define ISC_R_NOT_EQUAL		DHCP_R_NOT_EQUAL
116 #define ISC_R_CONNRESET		DHCP_R_CONNRESET
117 #define ISC_R_UNKNOWNATTRIBUTE	DHCP_R_UNKNOWNATTRIBUTE
118 #endif
119 
120 isc_result_t
121 dhcp_result_register(void);
122 
123 #endif /* DHCP_RESULT_H */
124