Commit | Line | Data |
---|---|---|
ee8eb34a KS |
1 | /*********************************************************** |
2 | Copyright IBM Corporation 1987 | |
3 | ||
4 | All Rights Reserved | |
5 | ||
6 | Permission to use, copy, modify, and distribute this software and its | |
7 | documentation for any purpose and without fee is hereby granted, | |
8 | provided that the above copyright notice appear in all copies and that | |
9 | both that copyright notice and this permission notice appear in | |
10 | supporting documentation, and that the name of IBM not be | |
11 | used in advertising or publicity pertaining to distribution of the | |
12 | software without specific, written prior permission. | |
13 | ||
14 | IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING | |
15 | ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL | |
16 | IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR | |
17 | ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, | |
18 | WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, | |
19 | ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS | |
20 | SOFTWARE. | |
21 | ||
22 | ******************************************************************/ | |
23 | ||
24 | /* | |
25 | * ARGO Project, Computer Sciences Dept., University of Wisconsin - Madison | |
26 | */ | |
d89f3fe1 | 27 | /* @(#)iso_errno.h 7.4 (Berkeley) %G% */ |
ee8eb34a KS |
28 | |
29 | #ifndef __ISO_ERRNO__ | |
30 | #define __ISO_ERRNO__ | |
31 | ||
32 | #define ISO_ERROR_MASK 0x8000 | |
33 | #define BSD_ERROR_MASK 0x0000 | |
34 | #define TP_ERROR_MASK 0x8800 /* transport layer */ | |
35 | #define CONL_ERROR_MASK 0x8400 /* co network layer */ | |
36 | #define CLNL_ERROR_MASK 0x8200 /* cl network layer */ | |
d89f3fe1 | 37 | #define TP_ERROR_SNDC 0x10000 /* kludge to force DC's on certain errors */ |
ee8eb34a KS |
38 | |
39 | #define E_CO_NOERROR (CONL_ERROR_MASK | 0x0) /* no add'l info */ | |
40 | ||
41 | /******************************************************************************/ | |
42 | /* */ | |
43 | /* */ | |
44 | /* Transport Layer */ | |
45 | /* */ | |
46 | /* */ | |
47 | /******************************************************************************/ | |
48 | ||
49 | #define E_TP_DR_NO_REAS (TP_ERROR_MASK | 0x0) /* dr reason not specified*/ | |
50 | #define E_TP_CONGEST (TP_ERROR_MASK | 0x1) /* dr reason congestion */ | |
51 | #define E_TP_NO_SESSION (TP_ERROR_MASK | 0x2) /* dr reason no sess ent */ | |
52 | #define E_TP_ADDR_UNK (TP_ERROR_MASK | 0x3) /* dr reason addr unknown */ | |
53 | ||
54 | #define E_TP_ER_NO_REAS (TP_ERROR_MASK | 0x40) /* er reas not specified */ | |
55 | #define E_TP_INV_PCODE (TP_ERROR_MASK | 0x41) /* er reas invalid parm code */ | |
56 | #define E_TP_INV_TPDU (TP_ERROR_MASK | 0x42) /* er reas invalid tpdu type */ | |
57 | #define E_TP_INV_PVAL (TP_ERROR_MASK | 0x43) /* er reas invalid parm value*/ | |
58 | ||
59 | #define E_TP_NORMAL_DISC (TP_ERROR_MASK | 0x80) /* dr reas normal disc */ | |
60 | #define E_TP_CONGEST_2 (TP_ERROR_MASK | 0x81) /* dr reason congestion */ | |
61 | #define E_TP_NEGOT_FAILED (TP_ERROR_MASK | 0x82) /* dr negotiation failed */ | |
62 | #define E_TP_DUPL_SRCREF (TP_ERROR_MASK | 0x83) /* dr duplicate src ref */ | |
63 | #define E_TP_MISM_REFS (TP_ERROR_MASK | 0x84) /* dr mismatched references*/ | |
64 | #define E_TP_PROTO_ERR (TP_ERROR_MASK | 0x85) /* dr protocol error*/ | |
65 | /* 0x86 not used */ | |
66 | #define E_TP_REF_OVERFLOW (TP_ERROR_MASK | 0x87) /* dr reference overflow */ | |
67 | #define E_TP_NO_CR_ON_NC (TP_ERROR_MASK | 0x88) /* dr cr refused on this nc */ | |
68 | /* 0x89 not used */ | |
69 | #define E_TP_LENGTH_INVAL (TP_ERROR_MASK | 0x8a) /* dr inval length in hdr*/ | |
70 | ||
71 | /******************************************************************************/ | |
72 | /* */ | |
73 | /* */ | |
74 | /* Connection Less Network Layer */ | |
75 | /* */ | |
76 | /* */ | |
77 | /******************************************************************************/ | |
78 | ||
79 | #define E_CLNL_??? (CLNL_ERROR_MASK | 0x1) /* explanation */ | |
80 | ||
81 | /******************************************************************************/ | |
82 | /* */ | |
83 | /* */ | |
84 | /* Connection Oriented Network Layer */ | |
85 | /* */ | |
86 | /* */ | |
87 | /******************************************************************************/ | |
88 | /* see p. 149 of ISO 8208 */ | |
89 | #define E_CO_NOERROR (CONL_ERROR_MASK | 0x0) /* no add'l info */ | |
90 | #define E_CO_INV_PS (CONL_ERROR_MASK | 0x1) /* invalid p(s) */ | |
91 | #define E_CO_INV_PR (CONL_ERROR_MASK | 0x2) /* invalid p(r) */ | |
92 | /* dot dot dot */ | |
93 | #define E_CO_INV_PKT_TYPE (CONL_ERROR_MASK | 0x10) /* packet type invalid*/ | |
94 | #define E_CO_INV_PKT_R1 (CONL_ERROR_MASK | 0x11) /* for state r1 */ | |
95 | #define E_CO_INV_PKT_R2 (CONL_ERROR_MASK | 0x12) /* for state r2 */ | |
96 | #define E_CO_INV_PKT_R3 (CONL_ERROR_MASK | 0x13) /* for state r3 */ | |
97 | #define E_CO_INV_PKT_P1 (CONL_ERROR_MASK | 0x14) /* for state p1 */ | |
98 | #define E_CO_INV_PKT_P2 (CONL_ERROR_MASK | 0x15) /* for state p2 */ | |
99 | #define E_CO_INV_PKT_P3 (CONL_ERROR_MASK | 0x16) /* for state p3 */ | |
100 | #define E_CO_INV_PKT_P4 (CONL_ERROR_MASK | 0x17) /* for state p4 */ | |
101 | #define E_CO_INV_PKT_P5 (CONL_ERROR_MASK | 0x18) /* for state p5 */ | |
102 | #define E_CO_INV_PKT_P6 (CONL_ERROR_MASK | 0x19) /* for state p6 */ | |
103 | #define E_CO_INV_PKT_P7 (CONL_ERROR_MASK | 0x1a) /* for state p7 */ | |
104 | #define E_CO_INV_PKT_D1 (CONL_ERROR_MASK | 0x1b) /* for state d1 */ | |
105 | #define E_CO_INV_PKT_D2 (CONL_ERROR_MASK | 0x1c) /* for state d2 */ | |
106 | #define E_CO_INV_PKT_D3 (CONL_ERROR_MASK | 0x1d) /* for state d3 */ | |
107 | /* dot dot dot */ | |
108 | #define E_CO_PKT_NOT_ALWD (CONL_ERROR_MASK | 0x20) /* packet not allowed */ | |
109 | #define E_CO_PNA_UNIDENT (CONL_ERROR_MASK | 0x21) /* unidentifiable pkt */ | |
110 | #define E_CO_PNA_ONEWAY (CONL_ERROR_MASK | 0x22) /* call on 1-way lc */ | |
111 | #define E_CO_PNA_PVC (CONL_ERROR_MASK | 0x23) /* inv pkt type on a pvc */ | |
112 | #define E_CO_PNA_UNASSLC (CONL_ERROR_MASK | 0x24) /* pkt on unassigned lc */ | |
113 | #define E_CO_PNA_REJECT (CONL_ERROR_MASK | 0x25) /* REJ not subscribed to*/ | |
114 | #define E_CO_PNA_SHORT (CONL_ERROR_MASK | 0x26) /* pkt too short */ | |
115 | #define E_CO_PNA_LONG (CONL_ERROR_MASK | 0x27) /* pkt too long */ | |
116 | #define E_CO_PNA_INVGFI (CONL_ERROR_MASK | 0x28) /* inv gen format id */ | |
117 | #define E_CO_PNA_NZLCI (CONL_ERROR_MASK | 0x29) \ | |
118 | /* restart or reg pkt with nonzero logical channel identifier */ | |
119 | #define E_CO_PNA_FACIL (CONL_ERROR_MASK | 0x2a) \ | |
120 | /* pkt type not compat with facility */ | |
121 | #define E_CO_PNA_UINTCON (CONL_ERROR_MASK | 0x2b) /* unauthor intrpt conf */ | |
122 | #define E_CO_PNA_UINTRPT (CONL_ERROR_MASK | 0x2c) /* unauthorized intrpt */ | |
123 | #define E_CO_PNA_UREJECT (CONL_ERROR_MASK | 0x2d) /* unauthorized reject */ | |
124 | ||
125 | #define E_CO_TMR_EXP (CONL_ERROR_MASK | 0x30) /* timer expired */ | |
126 | #define E_CO_TMR_CALR (CONL_ERROR_MASK | 0x31) /* inc. call or call req */ | |
127 | #define E_CO_TMR_CLRI (CONL_ERROR_MASK | 0x32) /* clear indication */ | |
128 | #define E_CO_TMR_RSTI (CONL_ERROR_MASK | 0x33) /* reset indication */ | |
129 | #define E_CO_TMR_RRTI (CONL_ERROR_MASK | 0x34) /* restart indication */ | |
130 | ||
131 | #define E_CO_REG_PROB (CONL_ERROR_MASK | 0x40)\ | |
132 | /* call setup, clear, or registration problem */ | |
133 | #define E_CO_REG_CODE (CONL_ERROR_MASK | 0x41) /* code not allowed */ | |
134 | #define E_CO_REG_PARM (CONL_ERROR_MASK | 0x42) /* parameter not allowed */ | |
135 | #define E_CO_REG_ICDA (CONL_ERROR_MASK | 0x43) /* invalid called addr */ | |
136 | #define E_CO_REG_ICGA (CONL_ERROR_MASK | 0x44) /* invalid calling addr */ | |
137 | #define E_CO_REG_ILEN (CONL_ERROR_MASK | 0x45) /* invalid facil length */ | |
138 | #define E_CO_REG_IBAR (CONL_ERROR_MASK | 0x46) /* incoming call barred */ | |
139 | #define E_CO_REG_NOLC (CONL_ERROR_MASK | 0x47) /* no logical chan avail*/ | |
140 | #define E_CO_REG_COLL (CONL_ERROR_MASK | 0x48) /* call collision */ | |
141 | #define E_CO_REG_DUPF (CONL_ERROR_MASK | 0x49) /* dupl facil requested */ | |
142 | #define E_CO_REG_NZAL (CONL_ERROR_MASK | 0x4a) /* non-zero addr length */ | |
143 | #define E_CO_REG_NZFL (CONL_ERROR_MASK | 0x4b) /* non-zero facil length */ | |
144 | #define E_CO_REG_EFNP (CONL_ERROR_MASK | 0x4c) \ | |
145 | /* expected facil not provided */ | |
146 | #define E_CO_REG_ICCITT (CONL_ERROR_MASK | 0x4d) \ | |
147 | /* invalid CCITT-specified DTE facil */ | |
148 | ||
149 | #define E_CO_MISC (CONL_ERROR_MASK | 0x50) /* miscellaneous */ | |
150 | #define E_CO_MISC_CAUSE (CONL_ERROR_MASK | 0x51) /* improper cause code */ | |
151 | #define E_CO_MISC_ALIGN (CONL_ERROR_MASK | 0x52) /* not octet-aligned */ | |
152 | #define E_CO_MISC_IQBS (CONL_ERROR_MASK | 0x53) \ | |
153 | /* inconsistent Q bit settings */ | |
154 | ||
155 | #define E_CO_INTL (CONL_ERROR_MASK | 0x70) /* international problem */ | |
156 | #define E_CO_IREMNWK (CONL_ERROR_MASK | 0x71) /* remote network problem */ | |
157 | #define E_CO_INPROTO (CONL_ERROR_MASK | 0x72) /* int'l protocol problem */ | |
158 | #define E_CO_ILINKDWN (CONL_ERROR_MASK | 0x73) /* int'l link down */ | |
159 | #define E_CO_ILINKBSY (CONL_ERROR_MASK | 0x74) /* int'l link busy */ | |
160 | #define E_CO_IXNETFAC (CONL_ERROR_MASK | 0x75) /* transit netwk facil */ | |
161 | #define E_CO_IRNETFAC (CONL_ERROR_MASK | 0x76) /* remote netwk facil */ | |
162 | #define E_CO_IROUTING (CONL_ERROR_MASK | 0x77) /* int'l routing prob */ | |
163 | #define E_CO_ITMPRTG (CONL_ERROR_MASK | 0x78) /* temporary routing prob */ | |
164 | #define E_CO_IUNKDNIC (CONL_ERROR_MASK | 0x79) /* unknown called DNIC */ | |
165 | #define E_CO_IMAINT (CONL_ERROR_MASK | 0x7a) /* maintenance action */ | |
166 | ||
167 | #define E_CO_TIMO (CONL_ERROR_MASK | 0x90) \ | |
168 | /* timer expired or retransmission count surpassed */ | |
169 | #define E_CO_TIM_INTRP (CONL_ERROR_MASK | 0x91) /* for interrupt */ | |
170 | #define E_CO_TIM_DATA (CONL_ERROR_MASK | 0x92) /* for data */ | |
171 | #define E_CO_TIM_REJ (CONL_ERROR_MASK | 0x93) /* for reject */ | |
172 | ||
173 | #define E_CO_DTE_SPEC (CONL_ERROR_MASK | 0xa0) /* DTE-specific */ | |
174 | #define E_CO_DTE_OK (CONL_ERROR_MASK | 0xa1) /* DTE operational */ | |
175 | #define E_CO_DTE_NOK (CONL_ERROR_MASK | 0xa2) /* DTE not operational */ | |
176 | #define E_CO_DTE_RSRC (CONL_ERROR_MASK | 0xa3) /* DTE resource constraint*/ | |
177 | #define E_CO_DTE_FSLCT (CONL_ERROR_MASK | 0xa4) /* fast select not subsc */ | |
178 | #define E_CO_DTE_PFPKT (CONL_ERROR_MASK | 0xa5) /* partially full pkt */ | |
179 | #define E_CO_DTE_DBIT (CONL_ERROR_MASK | 0xa6) /* D-bit proc not supp */ | |
180 | #define E_CO_DTE_RCCON (CONL_ERROR_MASK | 0xa7) /* reg/canell confirmed */ | |
181 | ||
182 | #define E_CO_OSI_NSP (CONL_ERROR_MASK | 0xe0) /* OSI net svc problem */ | |
183 | #define E_CO_OSI_DISCT (CONL_ERROR_MASK | 0xe1) /* disconnect transient */ | |
184 | #define E_CO_OSI_DISCP (CONL_ERROR_MASK | 0xe2) /* disconnect permanent */ | |
185 | #define E_CO_OSI_REJT (CONL_ERROR_MASK | 0xe3) /* reject transient */ | |
186 | #define E_CO_OSI_REJP (CONL_ERROR_MASK | 0xe4) /* reject permanent */ | |
187 | #define E_CO_OSI_QOST (CONL_ERROR_MASK | 0xe5) /* reject QOS transient */ | |
188 | #define E_CO_OSI_QOSP (CONL_ERROR_MASK | 0xe6) /* reject QOS permanent */ | |
189 | #define E_CO_OSI_NSAPT (CONL_ERROR_MASK | 0xe7) /* NSAP unreach transient */ | |
190 | #define E_CO_OSI_NSAPP (CONL_ERROR_MASK | 0xe8) /* NSAP unreach permanent */ | |
191 | #define E_CO_OSI_RESET (CONL_ERROR_MASK | 0xe9) /* reset no reason */ | |
192 | #define E_CO_OSI_CONGEST (CONL_ERROR_MASK | 0xea) /* reset congestion */ | |
193 | #define E_CO_OSI_UNSAP (CONL_ERROR_MASK | 0xeb) /* unknown NSAP permanent */ | |
194 | ||
195 | #define E_CO_HLI_INIT (CONL_ERROR_MASK | 0xf0) /* higher level initiated*/ | |
196 | #define E_CO_HLI_DISCN (CONL_ERROR_MASK | 0xf1) /* disconnect normal */ | |
197 | #define E_CO_HLI_DISCA (CONL_ERROR_MASK | 0xf2) /* disconnect abnormal */ | |
198 | #define E_CO_HLI_DISCI (CONL_ERROR_MASK | 0xf3) /* disconnect incompatible*/ | |
199 | #define E_CO_HLI_REJT (CONL_ERROR_MASK | 0xf4) /* reject transient */ | |
200 | #define E_CO_HLI_REJP (CONL_ERROR_MASK | 0xf5) /* reject permanent */ | |
201 | #define E_CO_HLI_QOST (CONL_ERROR_MASK | 0xf6) /* reject QOS transient */ | |
202 | #define E_CO_HLI_QOSP (CONL_ERROR_MASK | 0xf7) /* reject QOS permanent */ | |
203 | #define E_CO_HLI_REJI (CONL_ERROR_MASK | 0xf8) /* reject incompatible */ | |
204 | #define E_CO_HLI_PROTOID (CONL_ERROR_MASK | 0xf9) /* unrecog proto id */ | |
205 | #define E_CO_HLI_RESYNC (CONL_ERROR_MASK | 0xfa) /* reset - user resync */ | |
206 | ||
207 | /* Cause on 8208 CLEAR field */ | |
208 | #define E_CO_NUMBERBUSY (CONL_ERROR_MASK | 0x101) /* Number busy */ | |
209 | #define E_CO_INVFACREQ (CONL_ERROR_MASK | 0x103) /* invalid facil req */ | |
210 | #define E_CO_NETCONGEST (CONL_ERROR_MASK | 0x105) /* Network congestion */ | |
211 | #define E_CO_OUTOFORDER (CONL_ERROR_MASK | 0x109) /* Out of order */ | |
212 | #define E_CO_ACCESSBAR (CONL_ERROR_MASK | 0x10b) /* access barred */ | |
213 | #define E_CO_NOTOBTAIN (CONL_ERROR_MASK | 0x10d) /* not obtainable */ | |
214 | #define E_CO_REMPROCERR (CONL_ERROR_MASK | 0x111) /* Remote procedure err */ | |
215 | #define E_CO_LOCPROCERR (CONL_ERROR_MASK | 0x113) /* Local procedure err */ | |
216 | #define E_CO_RPOAOOO (CONL_ERROR_MASK | 0x115) /* RPOA out of order */ | |
217 | #define E_CO_NOREVCHG (CONL_ERROR_MASK | 0x119) /* Revs chg not accepted*/ | |
218 | #define E_CO_INCOMPAT (CONL_ERROR_MASK | 0x121) /* Incompatible dest */ | |
219 | #define E_CO_NOFASTSEL (CONL_ERROR_MASK | 0x129) | |
220 | /* Fast select accpt not subscribed */ | |
221 | #define E_CO_NOSHIP (CONL_ERROR_MASK | 0x139) /* ship absent */ | |
222 | #define E_CO_GWPROCERR (CONL_ERROR_MASK | 0x1c1) /* Gateway-detected err*/ | |
223 | #define E_CO_GWCONGEST (CONL_ERROR_MASK | 0x1c3) /* Gateway congestion*/ | |
224 | ||
225 | /* ARGO only */ | |
226 | #define E_CO_QFULL (CONL_ERROR_MASK | 0x100) /* dropped packet - queue full*/ | |
227 | #define E_CO_AIWP (CONL_ERROR_MASK | 0x102) /* addr incompat w/proto */ | |
228 | #define E_CO_CHAN (CONL_ERROR_MASK | 0x104) /* bad channel number */ | |
229 | ||
230 | /* ARGO only; driver specific */ | |
231 | #define E_CO_NORESOURCES (CONL_ERROR_MASK | 0x1b0) /* eicon clogged */ | |
232 | #define E_CO_PDNDOWN (CONL_ERROR_MASK | 0x1b1) /* physical net down */ | |
233 | #define E_CO_DRVRCLRESET (CONL_ERROR_MASK | 0x1b2) /* driver clear/reset */ | |
234 | #define E_CO_PDNCLRESET (CONL_ERROR_MASK | 0x1b3) /* PDN clear/reset */ | |
235 | #define E_CO_DTECLRESET (CONL_ERROR_MASK | 0x1b4) /* board clear/reset */ | |
236 | #define E_CO_UNKCLRESET (CONL_ERROR_MASK | 0x1b5) /* unexpected clr/rst */ | |
237 | ||
238 | #define CONL_ERROR_MAX 0x1c3 | |
239 | ||
240 | #endif __ISO_ERRNO__ |