xref: /csrg-svn/sys/netiso/argo_debug.h (revision 37469)
1*37469Ssklower /*********************************************************** Copyright IBM Corporation 1987
236364Ssklower 
336364Ssklower                       All Rights Reserved
436364Ssklower 
536364Ssklower Permission to use, copy, modify, and distribute this software and its
636364Ssklower documentation for any purpose and without fee is hereby granted,
736364Ssklower provided that the above copyright notice appear in all copies and that
836364Ssklower both that copyright notice and this permission notice appear in
936364Ssklower supporting documentation, and that the name of IBM not be
1036364Ssklower used in advertising or publicity pertaining to distribution of the
1136364Ssklower software without specific, written prior permission.
1236364Ssklower 
1336364Ssklower IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
1436364Ssklower ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
1536364Ssklower IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
1636364Ssklower ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
1736364Ssklower WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
1836364Ssklower ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
1936364Ssklower SOFTWARE.
2036364Ssklower 
2136364Ssklower ******************************************************************/
2236364Ssklower 
2336364Ssklower /*
2436364Ssklower  * ARGO Project, Computer Sciences Dept., University of Wisconsin - Madison
2536364Ssklower  */
2636364Ssklower /*
2736364Ssklower  * $Header: argo_debug.h,v 4.6 88/07/19 15:53:40 hagens Exp $
2836364Ssklower  * $Source: /usr/argo/sys/netiso/RCS/argo_debug.h,v $
29*37469Ssklower  *	@(#)argo_debug.h	7.2 (Berkeley) 04/22/89
3036364Ssklower  */
3136364Ssklower #ifndef __ARGO_DEBUG__
3236364Ssklower #define __ARGO_DEBUG__
3336364Ssklower 
34*37469Ssklower #define dump_buf(a, b) Dump_buf((caddr_t)(a), (int)(b))
3536364Ssklower 
3636364Ssklower /***********************************************
3736364Ssklower  * Lint stuff
3836364Ssklower  **********************************************/
3936364Ssklower #if	defined(lint)
4036364Ssklower /*
4136364Ssklower  * lint can't handle the flaky vacuous definitions
4236364Ssklower  * of IFDEBUG, ENDDEBUG, etc.
4336364Ssklower  */
44*37469Ssklower #endif	defined(lint)
4536364Ssklower 
46*37469Ssklower /***********************************************
47*37469Ssklower  * DEBUG ON:
48*37469Ssklower  **********************************************/
4936364Ssklower #ifndef ARGO_DEBUG
5036364Ssklower #define ARGO_DEBUG
5136364Ssklower #endif ARGO_DEBUG
5236364Ssklower 
5336364Ssklower 
54*37469Ssklower #ifdef ARGO_DEBUG
55*37469Ssklower /*
56*37469Ssklower     #ifndef TPPT
57*37469Ssklower     #define TPPT
58*37469Ssklower     #endif TPPT
5936364Ssklower 
60*37469Ssklower     #ifndef TP_PERF_MEAS
61*37469Ssklower     #define TP_PERF_MEAS
62*37469Ssklower     #endif TP_PERF_MEAS
63*37469Ssklower */
64*37469Ssklower 
6536364Ssklower unsigned char	argo_debug[128];
6636364Ssklower 
6736364Ssklower #define IFDEBUG(ascii) \
6836364Ssklower 	if(argo_debug[ascii]) {
6936364Ssklower #define ENDDEBUG  ; }
7036364Ssklower 
7136364Ssklower #else  ARGO_DEBUG
7236364Ssklower 
7336364Ssklower /***********************************************
7436364Ssklower  * DEBUG OFF:
7536364Ssklower  **********************************************/
7636364Ssklower 
7736364Ssklower #ifndef STAR
7836364Ssklower #define STAR *
7936364Ssklower #endif	STAR
8036364Ssklower #define IFDEBUG(ascii)	 //*beginning of comment*/STAR
8136364Ssklower #define ENDDEBUG	 STAR/*end of comment*//
8236364Ssklower 
8336364Ssklower #endif ARGO_DEBUG
8436364Ssklower 
8536364Ssklower /***********************************************
8636364Ssklower  * ASSERT
8736364Ssklower  **********************************************/
8836364Ssklower #ifdef ARGO_DEBUG
8936364Ssklower 
9036364Ssklower #ifndef lint
9136364Ssklower #define ASSERT(phrase) \
9236364Ssklower if( !(phrase) ) printf("ASSERTION NOT VALID at line %d file %s\n",__LINE__,__FILE__)
9336364Ssklower #else lint
9436364Ssklower #define ASSERT(phrase) /* phrase */
9536364Ssklower #endif lint
9636364Ssklower 
9736364Ssklower #else ARGO_DEBUG
9836364Ssklower 
9936364Ssklower #define ASSERT(phrase) /* phrase */
10036364Ssklower 
10136364Ssklower #endif ARGO_DEBUG
10236364Ssklower 
10336364Ssklower 
10436364Ssklower /***********************************************
10536364Ssklower  * CLNP DEBUG OPTIONS
10636364Ssklower  **********************************************/
10736364Ssklower #define	D_INPUT			'\1'
10836364Ssklower /* clnp input */
10936364Ssklower #define	D_OUTPUT		'\2'
11036364Ssklower /* clnp output */
11136364Ssklower #define	D_ROUTE			'\3'
11236364Ssklower /* clnp routing */
11336364Ssklower #define	D_CTLINPUT		'\4'
11436364Ssklower /* clnp control input */
11536364Ssklower #define	D_CTLOUTPUT		'\5'
11636364Ssklower /* clnp control output */
11736364Ssklower #define D_OPTIONS		'\6'
11836364Ssklower /* clnp options */
11936364Ssklower #define	D_IOCTL			'\7'
12036364Ssklower /* iso ioctls */
12136364Ssklower #define D_ETHER			'\10'
12236364Ssklower /* clnp over ethernet */
12336364Ssklower #define D_TOKEN			'\11'
12436364Ssklower /* clnp over token ring */
12536364Ssklower #define D_ADCOM			'\12'
12636364Ssklower /* clnp over the adcom */
12736364Ssklower #define D_ISO			'\13'
12836364Ssklower /* iso address family */
12936364Ssklower #define	D_FORWARD		'\14'
13036364Ssklower /* clnp forwarding */
13136364Ssklower #define	D_DUMPOUT		'\15'
13236364Ssklower /* dump clnp outgoing packets */
13336364Ssklower #define	D_DUMPIN		'\16'
13436364Ssklower /* dump clnp input packets */
13536364Ssklower #define D_DISCARD		'\17'
13636364Ssklower /* debug clnp packet discard/er function */
13736364Ssklower #define D_FRAG			'\20'
13836364Ssklower /* clnp fragmentation */
13936364Ssklower #define	D_REASS			'\21'
14036364Ssklower /* clnp reassembly */
14136364Ssklower 
14236364Ssklower char *clnp_iso_addrp();
14336364Ssklower 
14436364Ssklower /***********************************************
14536364Ssklower  * ESIS DEBUG OPTIONS
14636364Ssklower  **********************************************/
14736364Ssklower #define	D_ESISOUTPUT	'\30'
14836364Ssklower #define	D_ESISINPUT		'\31'
14936364Ssklower #define D_SNPA			'\32'
15036364Ssklower 
15136364Ssklower /***********************************************
15236364Ssklower  * EON DEBUG OPTION
15336364Ssklower  **********************************************/
15436364Ssklower #define	D_EON			'\57'
15536364Ssklower 
15636364Ssklower /***********************************************
15736364Ssklower  * CONS DEBUG OPTIONS
15836364Ssklower  **********************************************/
15936364Ssklower 
16036364Ssklower #define D_ECNWORK		'\60'
16136364Ssklower #define D_ECNOUT		'\61'
16236364Ssklower #define D_ECNFIN		'\62'
16336364Ssklower #define D_ECNDWN		'\63'
16436364Ssklower #define D_ECNUTIL		'\64'
16536364Ssklower 
16636364Ssklower #define D_INCOMING		'\70'
16736364Ssklower #define D_CDATA			'\71'
16836364Ssklower #define D_CFIND			'\72'
16936364Ssklower #define D_CDUMP_REQ		'\73'
17036364Ssklower #define D_CADDR			'\74'
17136364Ssklower #define D_CCONS			'\75'
17236364Ssklower #define D_CCONN			'\76'
17336364Ssklower 
17436364Ssklower 
17536364Ssklower /***********************************************
17636364Ssklower  * TP DEBUG OPTIONS
17736364Ssklower  **********************************************/
17836364Ssklower 
17936364Ssklower #define D_SETPARAMS		'\137'
18036364Ssklower #define D_RTT 			'\140'
18136364Ssklower 
18236364Ssklower #define D_ACKRECV 		'\141'
18336364Ssklower #define D_ACKSEND 		'\142'
18436364Ssklower #define D_CONN 			'\143'
18536364Ssklower #define D_CREDIT 		'\144'
18636364Ssklower #define D_DATA 			'\145'
18736364Ssklower #define D_DRIVER 		'\146'
18836364Ssklower 
18936364Ssklower #define D_EMIT 			'\147'
19036364Ssklower #define D_ERROR_EMIT 	'\150'
19136364Ssklower #define D_TPINPUT 		'\151'
19236364Ssklower #define D_INDICATION 	'\152'
19336364Ssklower #define D_CHKSUM 		'\153'
19436364Ssklower 
19536364Ssklower #define D_RENEG 		'\154'
19636364Ssklower #define D_PERF_MEAS 	'\155'
19736364Ssklower #define D_MBUF_MEAS 	'\156'
19836364Ssklower #define D_RTC 			'\157'
19936364Ssklower #define D_SB 			'\160'
20036364Ssklower 
20136364Ssklower #define D_DISASTER_CHECK '\161'
20236364Ssklower #define D_REQUEST 		'\162'
20336364Ssklower #define D_STASH 		'\163'
20436364Ssklower #define D_NEWSOCK 		'\164'
20536364Ssklower #define D_TIMER 		'\165'
20636364Ssklower 
20736364Ssklower #define D_TPIOCTL 		'\166'
20836364Ssklower #define D_SIZE_CHECK 	'\167'
20936364Ssklower #define D_2ER 			'\170'
21036364Ssklower #define D_DISASTER_CHECK_W '\171'
21136364Ssklower 
21236364Ssklower #define D_XPD 			'\172'
21336364Ssklower #define D_SYSCALL 		'\173'
21436364Ssklower #define D_DROP 			'\174'
21536364Ssklower #define D_ZDREF 		'\175'
21636364Ssklower #define D_TPISO			'\176'
21736364Ssklower #define D_QUENCH		'\177'
21836364Ssklower 
21936364Ssklower void dump_mbuf();
22036364Ssklower 
22136364Ssklower /***********************************************
22236364Ssklower  * New mbuf types for debugging w/ netstat -m
223*37469Ssklower  * This messes up 4.4 malloc for now. need bigger
224*37469Ssklower  * mbtypes array for now.
22536364Ssklower  **********************************************/
226*37469Ssklower #ifdef notdef
22736364Ssklower 
22836364Ssklower #define 	TPMT_DATA	0x21
22936364Ssklower #define 	TPMT_RCVRTC	0x42
23036364Ssklower #define 	TPMT_SNDRTC	0x41
23136364Ssklower #define 	TPMT_TPHDR	0x22
23236364Ssklower #define 	TPMT_IPHDR	0x32
23336364Ssklower #define 	TPMT_SONAME	0x28
23436364Ssklower #define 	TPMT_EOT	0x40
23536364Ssklower #define 	TPMT_XPD	0x44
23636364Ssklower #define 	TPMT_PCB	0x23
23736364Ssklower #define 	TPMT_PERF	0x45
23836364Ssklower 
23936364Ssklower #else ARGO_DEBUG
24036364Ssklower 
24136364Ssklower #define 	TPMT_DATA	MT_DATA
24236364Ssklower #define 	TPMT_RCVRTC	MT_DATA
24336364Ssklower #define 	TPMT_SNDRTC	MT_DATA
24436364Ssklower #define 	TPMT_IPHDR	MT_HEADER
24536364Ssklower #define 	TPMT_TPHDR	MT_HEADER
24636364Ssklower #define 	TPMT_SONAME	MT_SONAME
24736364Ssklower /* MT_EOT and MT_XPD are defined in tp_param.h */
248*37469Ssklower #define 	TPMT_XPD	MT_OOBDATA
24936364Ssklower #define 	TPMT_PCB	MT_PCB
25036364Ssklower #define 	TPMT_PERF	MT_PCB
25136364Ssklower 
25236364Ssklower #endif ARGO_DEBUG
25336364Ssklower 
25436364Ssklower #endif __ARGO_DEBUG__
255