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