ISC DHCP
4.4.2b1
A reference DHCPv4 and DHCPv6 implementation
toisc.c
Go to the documentation of this file.
1
/* toisc.c
2
3
Convert non-ISC result codes to ISC result codes. */
4
5
/*
6
* Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC")
7
* Copyright (c) 2001-2003 by Internet Software Consortium
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
14
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
15
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR
16
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
17
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
18
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
19
* OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
20
*
21
* Internet Systems Consortium, Inc.
22
* 950 Charter Street
23
* Redwood City, CA 94063
24
* <info@isc.org>
25
* https://www.isc.org/
26
*
27
*/
28
29
#include "
dhcpd.h
"
30
31
#include <
omapip/omapip_p.h
>
32
#include "
arpa/nameser.h
"
33
#include "
ns_name.h
"
34
35
#include <errno.h>
36
37
isc_result_t
uerr2isc
(
int
err)
38
{
39
switch
(err) {
40
case
EPERM:
41
return
ISC_R_NOPERM;
42
43
case
ENOENT:
44
return
ISC_R_NOTFOUND;
45
46
case
ESRCH:
47
return
ISC_R_NOTFOUND;
48
49
case
EIO:
50
return
ISC_R_IOERROR;
51
52
case
ENXIO:
53
return
ISC_R_NOTFOUND;
54
55
case
E2BIG:
56
return
ISC_R_NOSPACE;
57
58
case
ENOEXEC:
59
return
DHCP_R_FORMERR
;
60
61
case
ECHILD:
62
return
ISC_R_NOTFOUND;
63
64
case
ENOMEM:
65
return
ISC_R_NOMEMORY;
66
67
case
EACCES:
68
return
ISC_R_NOPERM;
69
70
case
EFAULT:
71
return
DHCP_R_INVALIDARG
;
72
73
case
EEXIST:
74
return
ISC_R_EXISTS;
75
76
case
EINVAL:
77
return
DHCP_R_INVALIDARG
;
78
79
case
ENOTTY:
80
return
DHCP_R_INVALIDARG
;
81
82
case
EFBIG:
83
return
ISC_R_NOSPACE;
84
85
case
ENOSPC:
86
return
ISC_R_NOSPACE;
87
88
case
EROFS:
89
return
ISC_R_NOPERM;
90
91
case
EMLINK:
92
return
ISC_R_NOSPACE;
93
94
case
EPIPE:
95
return
ISC_R_NOTCONNECTED;
96
97
case
EINPROGRESS:
98
return
ISC_R_ALREADYRUNNING;
99
100
case
EALREADY:
101
return
ISC_R_ALREADYRUNNING;
102
103
case
ENOTSOCK:
104
return
ISC_R_INVALIDFILE;
105
106
case
EDESTADDRREQ:
107
return
DHCP_R_DESTADDRREQ
;
108
109
case
EMSGSIZE:
110
return
ISC_R_NOSPACE;
111
112
case
EPROTOTYPE:
113
return
DHCP_R_INVALIDARG
;
114
115
case
ENOPROTOOPT:
116
return
ISC_R_NOTIMPLEMENTED
;
117
118
case
EPROTONOSUPPORT:
119
return
ISC_R_NOTIMPLEMENTED
;
120
121
case
ESOCKTNOSUPPORT:
122
return
ISC_R_NOTIMPLEMENTED
;
123
124
case
EOPNOTSUPP:
125
return
ISC_R_NOTIMPLEMENTED
;
126
127
case
EPFNOSUPPORT:
128
return
ISC_R_NOTIMPLEMENTED
;
129
130
case
EAFNOSUPPORT:
131
return
ISC_R_NOTIMPLEMENTED
;
132
133
case
EADDRINUSE:
134
return
ISC_R_ADDRINUSE;
135
136
case
EADDRNOTAVAIL:
137
return
ISC_R_ADDRNOTAVAIL;
138
139
case
ENETDOWN:
140
return
ISC_R_NETDOWN;
141
142
case
ENETUNREACH:
143
return
ISC_R_NETUNREACH;
144
145
case
ECONNABORTED:
146
return
ISC_R_TIMEDOUT;
147
148
case
ECONNRESET:
149
return
DHCP_R_CONNRESET
;
150
151
case
ENOBUFS:
152
return
ISC_R_NOSPACE;
153
154
case
EISCONN:
155
return
ISC_R_ALREADYRUNNING;
156
157
case
ENOTCONN:
158
return
ISC_R_NOTCONNECTED;
159
160
case
ESHUTDOWN:
161
return
ISC_R_SHUTTINGDOWN;
162
163
case
ETIMEDOUT:
164
return
ISC_R_TIMEDOUT;
165
166
case
ECONNREFUSED:
167
return
ISC_R_CONNREFUSED;
168
169
case
EHOSTDOWN:
170
return
ISC_R_HOSTDOWN;
171
172
case
EHOSTUNREACH:
173
return
ISC_R_HOSTUNREACH;
174
175
#ifdef EDQUOT
176
case
EDQUOT:
177
return
ISC_R_QUOTA;
178
#endif
179
180
#ifdef EBADRPC
181
case
EBADRPC:
182
return
ISC_R_NOTIMPLEMENTED
;
183
#endif
184
185
#ifdef ERPCMISMATCH
186
case
ERPCMISMATCH:
187
return
DHCP_R_VERSIONMISMATCH
;
188
#endif
189
190
#ifdef EPROGMISMATCH
191
case
EPROGMISMATCH:
192
return
DHCP_R_VERSIONMISMATCH
;
193
#endif
194
195
#ifdef EAUTH
196
case
EAUTH:
197
return
DHCP_R_NOTAUTH
;
198
#endif
199
200
#ifdef ENEEDAUTH
201
case
ENEEDAUTH:
202
return
DHCP_R_NOTAUTH
;
203
#endif
204
205
#ifdef EOVERFLOW
206
case
EOVERFLOW:
207
return
ISC_R_NOSPACE;
208
#endif
209
}
210
return
ISC_R_UNEXPECTED;
211
}
uerr2isc
isc_result_t uerr2isc(int err)
Definition:
toisc.c:37
omapip_p.h
nameser.h
DHCP_R_FORMERR
#define DHCP_R_FORMERR
Definition:
result.h:59
DHCP_R_VERSIONMISMATCH
#define DHCP_R_VERSIONMISMATCH
Definition:
result.h:47
dhcpd.h
DHCP_R_NOTAUTH
#define DHCP_R_NOTAUTH
Definition:
result.h:67
DHCP_R_DESTADDRREQ
#define DHCP_R_DESTADDRREQ
Definition:
result.h:73
DHCP_R_CONNRESET
#define DHCP_R_CONNRESET
Definition:
result.h:77
ISC_R_NOTIMPLEMENTED
#define ISC_R_NOTIMPLEMENTED
DHCP_R_INVALIDARG
#define DHCP_R_INVALIDARG
Definition:
result.h:49
ns_name.h
omapip
toisc.c
Generated on Wed Jul 29 2020 00:00:00 for ISC DHCP by
1.8.18