1 | /***************************************
2 | $Revision: 1.6 $
3 |
4 | Radix tree (rx). er_RX_errors.h - definition of errors for the radix module
5 |
6 | Status: NOT REVUED, TESTED,
7 |
8 | Design and implementation by: Marek Bukowy
9 |
10 | ******************/ /******************
11 | Copyright (c) 1999 RIPE NCC
12 |
13 | All Rights Reserved
14 |
15 | Permission to use, copy, modify, and distribute this software and its
16 | documentation for any purpose and without fee is hereby granted,
17 | provided that the above copyright notice appear in all copies and that
18 | both that copyright notice and this permission notice appear in
19 | supporting documentation, and that the name of the author not be
20 | used in advertising or publicity pertaining to distribution of the
21 | software without specific, written prior permission.
22 |
23 | THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
24 | ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS; IN NO EVENT SHALL
25 | AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
26 | DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
27 | AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
28 | OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
29 | ***************************************/
30 |
31 | /* step 1 */
32 |
33 | typedef enum {
34 | LOW_IP_OK=0,
35 | LOW_IP_INVVER,
36 |
37 | LOW_IP_INVIP4,
38 | LOW_IP_NOSLAS,
39 | LOW_IP_ADTOLO,
40 | LOW_IP_PRTOLO,
41 | LOW_IP_INVPRF,
42 | LOW_IP_INVRAN,
43 | LOW_IP_NOREVD,
44 |
45 | LOW_IP_NO6YET,
46 |
47 | LOW_IP_TOSHRT,
48 | LOW_IP_INVARG
49 |
50 | } IP_err_code_t;
51 |
52 | /* step 2 */
53 |
54 | #define IP_OK ER_SEV_I + (FAC_IP<<16) + LOW_IP_OK
55 |
56 | #define IP_INVVER ER_SEV_E + (FAC_IP<<16) + LOW_IP_INVVER
57 |
58 | #define IP_INVIP4 ER_SEV_E + (FAC_IP<<16) + LOW_IP_INVIP4
59 | #define IP_NOSLAS ER_SEV_E + (FAC_IP<<16) + LOW_IP_NOSLAS
60 | #define IP_ADTOLO ER_SEV_E + (FAC_IP<<16) + LOW_IP_ADTOLO
61 | #define IP_PRTOLO ER_SEV_E + (FAC_IP<<16) + LOW_IP_PRTOLO
62 | #define IP_INVPRF ER_SEV_E + (FAC_IP<<16) + LOW_IP_INVPRF
63 | #define IP_INVRAN ER_SEV_E + (FAC_IP<<16) + LOW_IP_INVRAN
64 | #define IP_NOREVD ER_SEV_E + (FAC_IP<<16) + LOW_IP_NOREVD
65 |
66 | #define IP_NO6YET ER_SEV_E + (FAC_IP<<16) + LOW_IP_NO6YET
67 |
68 | #define IP_TOSHRT ER_SEV_E + (FAC_IP<<16) + LOW_IP_TOSHRT
69 | #define IP_INVARG ER_SEV_E + (FAC_IP<<16) + LOW_IP_INVARG
70 |
71 | /* step 3 */
72 |
73 | #ifdef ER_IMPL
74 | er_list_t IP_mod_err[]={
75 | { ERDUP(IP_OK), "OK" },
76 |
77 | { ERDUP(IP_INVVER), "invalid IP version code" },
78 |
79 | { ERDUP(IP_INVIP4), "e2b: incorrect IPv4 address" },
80 | { ERDUP(IP_NOSLAS), "e2b: missing slash in prefix" },
81 | { ERDUP(IP_ADTOLO), "e2b: address part too long" },
82 | { ERDUP(IP_PRTOLO), "e2b: prefix part too long" },
83 | { ERDUP(IP_INVPRF), "e2b: incorrect prefix value" },
84 | { ERDUP(IP_INVRAN), "e2b: invalid range specification" },
85 | { ERDUP(IP_NOREVD), "e2b: not a reverse domain" },
86 |
87 | { ERDUP(IP_NO6YET), "IPv6 is not yet implemented" },
88 |
89 | { ERDUP(IP_TOSHRT), "b2a: supplied string too short" },
90 |
91 | { ERDUP(IP_INVARG), "invalid argument" }, /* very generic error */
92 |
93 | ER_LASTTXT
94 | };
95 |
96 | #endif /* ER_IMPL */