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