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