/* [<][>][^][v][top][bottom][index][help] */
DEFINITIONS
This source file includes following functions.
- LOW_IP_OK
- LOW_IP_INVVER
- LOW_IP_INVIP4
- LOW_IP_NOSLAS
- LOW_IP_ADTOLO
- LOW_IP_PRTOLO
- LOW_IP_INVPRF
- LOW_IP_INVRAN
- LOW_IP_NOREVD
- LOW_IP_NO6YET
- LOW_IP_TOSHRT
- LOW_IP_INVARG
- IP_err_code_t
1 /***************************************
2 $Revision: 1.7 $
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,2000,2001,2002 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,
/* [<][>][^][v][top][bottom][index][help] */
35 LOW_IP_INVVER,
/* [<][>][^][v][top][bottom][index][help] */
36
37 LOW_IP_INVIP4,
/* [<][>][^][v][top][bottom][index][help] */
38 LOW_IP_NOSLAS,
/* [<][>][^][v][top][bottom][index][help] */
39 LOW_IP_ADTOLO,
/* [<][>][^][v][top][bottom][index][help] */
40 LOW_IP_PRTOLO,
/* [<][>][^][v][top][bottom][index][help] */
41 LOW_IP_INVPRF,
/* [<][>][^][v][top][bottom][index][help] */
42 LOW_IP_INVRAN,
/* [<][>][^][v][top][bottom][index][help] */
43 LOW_IP_NOREVD,
/* [<][>][^][v][top][bottom][index][help] */
44
45 LOW_IP_NO6YET,
/* [<][>][^][v][top][bottom][index][help] */
46
47 LOW_IP_TOSHRT,
/* [<][>][^][v][top][bottom][index][help] */
48 LOW_IP_INVARG
/* [<][>][^][v][top][bottom][index][help] */
49
50 } IP_err_code_t;
/* [<][>][^][v][top][bottom][index][help] */
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 */