|
|
1.1 root 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: */
27: /*
28: * $Header: argo_debug.h,v 4.6 88/07/19 15:53:40 hagens Exp $
29: * $Source: /usr/argo/sys/netiso/RCS/argo_debug.h,v $
30: * @(#)argo_debug.h 7.3 (Berkeley) 6/22/90
31: */
32: #ifndef __ARGO_DEBUG__
33: #define __ARGO_DEBUG__
34:
35: #define dump_buf(a, b) Dump_buf((caddr_t)(a), (int)(b))
36:
37: /***********************************************
38: * Lint stuff
39: **********************************************/
40: #if defined(lint)
41: /*
42: * lint can't handle the flaky vacuous definitions
43: * of IFDEBUG, ENDDEBUG, etc.
44: */
45: #endif defined(lint)
46:
47: /***********************************************
48: * DEBUG ON:
49: **********************************************/
50: #ifndef ARGO_DEBUG
51: #define ARGO_DEBUG
52: #endif ARGO_DEBUG
53:
54:
55: #ifdef ARGO_DEBUG
56: /*
57: #ifndef TPPT
58: #define TPPT
59: #endif TPPT
60:
61: #ifndef TP_PERF_MEAS
62: #define TP_PERF_MEAS
63: #endif TP_PERF_MEAS
64: */
65:
66: unsigned char argo_debug[128];
67:
68: #define IFDEBUG(ascii) \
69: if(argo_debug[ascii]) {
70: #define ENDDEBUG ; }
71:
72: #else ARGO_DEBUG
73:
74: /***********************************************
75: * DEBUG OFF:
76: **********************************************/
77:
78: #ifndef STAR
79: #define STAR *
80: #endif STAR
81: #define IFDEBUG(ascii) //*beginning of comment*/STAR
82: #define ENDDEBUG STAR/*end of comment*//
83:
84: #endif ARGO_DEBUG
85:
86: /***********************************************
87: * ASSERT
88: **********************************************/
89: #ifdef ARGO_DEBUG
90:
91: #ifndef lint
92: #define ASSERT(phrase) \
93: if( !(phrase) ) printf("ASSERTION NOT VALID at line %d file %s\n",__LINE__,__FILE__)
94: #else lint
95: #define ASSERT(phrase) /* phrase */
96: #endif lint
97:
98: #else ARGO_DEBUG
99:
100: #define ASSERT(phrase) /* phrase */
101:
102: #endif ARGO_DEBUG
103:
104:
105: /***********************************************
106: * CLNP DEBUG OPTIONS
107: **********************************************/
108: #define D_INPUT '\1'
109: /* clnp input */
110: #define D_OUTPUT '\2'
111: /* clnp output */
112: #define D_ROUTE '\3'
113: /* clnp routing */
114: #define D_CTLINPUT '\4'
115: /* clnp control input */
116: #define D_CTLOUTPUT '\5'
117: /* clnp control output */
118: #define D_OPTIONS '\6'
119: /* clnp options */
120: #define D_IOCTL '\7'
121: /* iso ioctls */
122: #define D_ETHER '\10'
123: /* clnp over ethernet */
124: #define D_TOKEN '\11'
125: /* clnp over token ring */
126: #define D_ADCOM '\12'
127: /* clnp over the adcom */
128: #define D_ISO '\13'
129: /* iso address family */
130: #define D_FORWARD '\14'
131: /* clnp forwarding */
132: #define D_DUMPOUT '\15'
133: /* dump clnp outgoing packets */
134: #define D_DUMPIN '\16'
135: /* dump clnp input packets */
136: #define D_DISCARD '\17'
137: /* debug clnp packet discard/er function */
138: #define D_FRAG '\20'
139: /* clnp fragmentation */
140: #define D_REASS '\21'
141: /* clnp reassembly */
142:
143: char *clnp_iso_addrp();
144:
145: /***********************************************
146: * ESIS DEBUG OPTIONS
147: **********************************************/
148: #define D_ESISOUTPUT '\30'
149: #define D_ESISINPUT '\31'
150: #define D_SNPA '\32'
151:
152: /***********************************************
153: * ISIS DEBUG OPTIONS
154: **********************************************/
155: #define D_ISISOUTPUT '\40'
156: #define D_ISISINPUT '\41'
157:
158: /***********************************************
159: * EON DEBUG OPTION
160: **********************************************/
161: #define D_EON '\57'
162:
163: /***********************************************
164: * CONS DEBUG OPTIONS
165: **********************************************/
166:
167: #define D_ECNWORK '\60'
168: #define D_ECNOUT '\61'
169: #define D_ECNFIN '\62'
170: #define D_ECNDWN '\63'
171: #define D_ECNUTIL '\64'
172:
173: #define D_INCOMING '\70'
174: #define D_CDATA '\71'
175: #define D_CFIND '\72'
176: #define D_CDUMP_REQ '\73'
177: #define D_CADDR '\74'
178: #define D_CCONS '\75'
179: #define D_CCONN '\76'
180:
181:
182: /***********************************************
183: * TP DEBUG OPTIONS
184: **********************************************/
185:
186: #define D_SETPARAMS '\137'
187: #define D_RTT '\140'
188:
189: #define D_ACKRECV '\141'
190: #define D_ACKSEND '\142'
191: #define D_CONN '\143'
192: #define D_CREDIT '\144'
193: #define D_DATA '\145'
194: #define D_DRIVER '\146'
195:
196: #define D_EMIT '\147'
197: #define D_ERROR_EMIT '\150'
198: #define D_TPINPUT '\151'
199: #define D_INDICATION '\152'
200: #define D_CHKSUM '\153'
201:
202: #define D_RENEG '\154'
203: #define D_PERF_MEAS '\155'
204: #define D_MBUF_MEAS '\156'
205: #define D_RTC '\157'
206: #define D_SB '\160'
207:
208: #define D_DISASTER_CHECK '\161'
209: #define D_REQUEST '\162'
210: #define D_STASH '\163'
211: #define D_NEWSOCK '\164'
212: #define D_TIMER '\165'
213:
214: #define D_TPIOCTL '\166'
215: #define D_SIZE_CHECK '\167'
216: #define D_2ER '\170'
217: #define D_DISASTER_CHECK_W '\171'
218:
219: #define D_XPD '\172'
220: #define D_SYSCALL '\173'
221: #define D_DROP '\174'
222: #define D_ZDREF '\175'
223: #define D_TPISO '\176'
224: #define D_QUENCH '\177'
225:
226: void dump_mbuf();
227:
228: /***********************************************
229: * New mbuf types for debugging w/ netstat -m
230: * This messes up 4.4 malloc for now. need bigger
231: * mbtypes array for now.
232: **********************************************/
233: #ifdef notdef
234:
235: #define TPMT_DATA 0x21
236: #define TPMT_RCVRTC 0x42
237: #define TPMT_SNDRTC 0x41
238: #define TPMT_TPHDR 0x22
239: #define TPMT_IPHDR 0x32
240: #define TPMT_SONAME 0x28
241: #define TPMT_EOT 0x40
242: #define TPMT_XPD 0x44
243: #define TPMT_PCB 0x23
244: #define TPMT_PERF 0x45
245:
246: #else ARGO_DEBUG
247:
248: #define TPMT_DATA MT_DATA
249: #define TPMT_RCVRTC MT_DATA
250: #define TPMT_SNDRTC MT_DATA
251: #define TPMT_IPHDR MT_HEADER
252: #define TPMT_TPHDR MT_HEADER
253: #define TPMT_SONAME MT_SONAME
254: /* MT_EOT and MT_XPD are defined in tp_param.h */
255: #define TPMT_XPD MT_OOBDATA
256: #define TPMT_PCB MT_PCB
257: #define TPMT_PERF MT_PCB
258:
259: #endif ARGO_DEBUG
260:
261: #endif __ARGO_DEBUG__
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.