tcpdump  4.99.1
About: tcpdump is a tool for network monitoring and data acquisition.
  Fossies Dox: tcpdump-4.99.1.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

print-decnet.c File Reference
#include "netdissect-stdinc.h"
#include <stdio.h>
#include <stdlib.h>
#include "netdissect.h"
#include "extract.h"
#include "addrtoname.h"
Include dependency graph for print-decnet.c:

Go to the source code of this file.

Data Structures

union  etheraddr
 
struct  shorthdr
 
struct  longhdr
 
union  routehdr
 
struct  initmsg
 
struct  verifmsg
 
struct  testmsg
 
struct  l1rout
 
struct  l2rout
 
struct  rhellomsg
 
struct  ehellomsg
 
union  controlmsg
 
struct  nsphdr
 
struct  seghdr
 
struct  minseghdr
 
struct  lsmsg
 
struct  ackmsg
 
struct  minackmsg
 
struct  ciackmsg
 
struct  cimsg
 
struct  ccmsg
 
struct  cnmsg
 
struct  dimsg
 
struct  dcmsg
 

Macros

#define ND_LONGJMP_FROM_TCHECK
 
#define HIORD   0x000400aa /* high 32-bits of address (swapped) */
 
#define AREAMASK   0176000 /* mask for area field */
 
#define AREASHIFT   10 /* bit-offset for area field */
 
#define NODEMASK   01777 /* mask for node address field */
 
#define RMF_MASK   7 /* mask for message type */
 
#define RMF_SHORT   2 /* short message format */
 
#define RMF_LONG   6 /* long message format */
 
#define RMF_RQR   010 /* request return to sender */
 
#define RMF_RTS   020 /* returning to sender */
 
#define RMF_IE   040 /* intra-ethernet packet */
 
#define RMF_FVER   0100 /* future version flag */
 
#define RMF_PAD   0200 /* pad field */
 
#define RMF_PADMASK   0177 /* pad field mask */
 
#define VIS_MASK   077 /* visit field mask */
 
#define RMF_CTLMASK   017 /* mask for message type */
 
#define RMF_CTLMSG   01 /* control message indicator */
 
#define RMF_INIT   01 /* initialization message */
 
#define RMF_VER   03 /* verification message */
 
#define RMF_TEST   05 /* hello and test message */
 
#define RMF_L1ROUT   07 /* level 1 routing message */
 
#define RMF_L2ROUT   011 /* level 2 routing message */
 
#define RMF_RHELLO   013 /* router hello message */
 
#define RMF_EHELLO   015 /* endnode hello message */
 
#define TI_L2ROUT   01 /* level 2 router */
 
#define TI_L1ROUT   02 /* level 1 router */
 
#define TI_ENDNODE   03 /* endnode */
 
#define TI_VERIF   04 /* verification required */
 
#define TI_BLOCK   010 /* blocking requested */
 
#define VE_VERS   2 /* version number (2) */
 
#define VE_ECO   0 /* ECO number */
 
#define VE_UECO   0 /* user ECO number (0) */
 
#define P3_VERS   1 /* phase III version number (1) */
 
#define P3_ECO   3 /* ECO number (3) */
 
#define P3_UECO   0 /* user ECO number (0) */
 
#define II_L2ROUT   01 /* level 2 router */
 
#define II_L1ROUT   02 /* level 1 router */
 
#define II_ENDNODE   03 /* endnode */
 
#define II_VERIF   04 /* verification required */
 
#define II_NOMCAST   040 /* no multicast traffic accepted */
 
#define II_BLOCK   0100 /* blocking requested */
 
#define II_TYPEMASK   03 /* mask for node type */
 
#define TESTDATA   0252 /* test data bytes */
 
#define TESTLEN   1 /* length of transmitted test data */
 
#define RI_COST(x)   ((x)&0777)
 
#define RI_HOPS(x)   (((x)>>10)&037)
 
#define NSP_TYPEMASK   014 /* mask to isolate type code */
 
#define NSP_SUBMASK   0160 /* mask to isolate subtype code */
 
#define NSP_SUBSHFT   4 /* shift to move subtype code */
 
#define MFT_DATA   0 /* data message */
 
#define MFT_ACK   04 /* acknowledgement message */
 
#define MFT_CTL   010 /* control message */
 
#define MFS_ILS   020 /* data or I/LS indicator */
 
#define MFS_BOM   040 /* beginning of message (data) */
 
#define MFS_MOM   0 /* middle of message (data) */
 
#define MFS_EOM   0100 /* end of message (data) */
 
#define MFS_INT   040 /* interrupt message */
 
#define MFS_DACK   0 /* data acknowledgement */
 
#define MFS_IACK   020 /* I/LS acknowledgement */
 
#define MFS_CACK   040 /* connect acknowledgement */
 
#define MFS_NOP   0 /* no operation */
 
#define MFS_CI   020 /* connect initiate */
 
#define MFS_CC   040 /* connect confirm */
 
#define MFS_DI   060 /* disconnect initiate */
 
#define MFS_DC   0100 /* disconnect confirm */
 
#define MFS_RCI   0140 /* retransmitted connect initiate */
 
#define SGQ_ACK   0100000 /* ack */
 
#define SGQ_NAK   0110000 /* negative ack */
 
#define SGQ_OACK   0120000 /* other channel ack */
 
#define SGQ_ONAK   0130000 /* other channel negative ack */
 
#define SGQ_MASK   07777 /* mask to isolate seq # */
 
#define SGQ_OTHER   020000 /* other channel qualifier */
 
#define SGQ_DELAY   010000 /* ack delay flag */
 
#define SGQ_EOM   0100000 /* pseudo flag for end-of-message */
 
#define LSM_MASK   03 /* mask for modifier field */
 
#define LSM_NOCHANGE   0 /* no change */
 
#define LSM_DONOTSEND   1 /* do not send data */
 
#define LSM_SEND   2 /* send data */
 
#define LSI_MASK   014 /* mask for interpretation field */
 
#define LSI_DATA   0 /* data segment or message count */
 
#define LSI_INTR   4 /* interrupt request count */
 
#define LSI_INTM   0377 /* funny marker for int. message */
 
#define COS_MASK   014 /* mask for flow control field */
 
#define COS_NONE   0 /* no flow control */
 
#define COS_SEGMENT   04 /* segment flow control */
 
#define COS_MESSAGE   010 /* message flow control */
 
#define COS_DEFAULT   1 /* default value for field */
 
#define COI_MASK   3 /* mask for version field */
 
#define COI_32   0 /* version 3.2 */
 
#define COI_31   1 /* version 3.1 */
 
#define COI_40   2 /* version 4.0 */
 
#define COI_41   3 /* version 4.1 */
 
#define MNU_MASK   140 /* mask for session control version */
 
#define MNU_10   000 /* session V1.0 */
 
#define MNU_20   040 /* session V2.0 */
 
#define MNU_ACCESS   1 /* access control present */
 
#define MNU_USRDATA   2 /* user data field present */
 
#define MNU_INVKPROXY   4 /* invoke proxy field present */
 
#define MNU_UICPROXY   8 /* use uic-based proxy */
 
#define DC_NORESOURCES   1 /* no resource reason code */
 
#define DC_NOLINK   41 /* no link terminate reason code */
 
#define DC_COMPLETE   42 /* disconnect complete reason code */
 
#define DI_NOERROR   0 /* user disconnect */
 
#define DI_SHUT   3 /* node is shutting down */
 
#define DI_NOUSER   4 /* destination end user does not exist */
 
#define DI_INVDEST   5 /* invalid end user destination */
 
#define DI_REMRESRC   6 /* insufficient remote resources */
 
#define DI_TPA   8 /* third party abort */
 
#define DI_PROTOCOL   7 /* protocol error discovered */
 
#define DI_ABORT   9 /* user abort */
 
#define DI_LOCALRESRC   32 /* insufficient local resources */
 
#define DI_REMUSERRESRC   33 /* insufficient remote user resources */
 
#define DI_BADACCESS   34 /* bad access control information */
 
#define DI_BADACCNT   36 /* bad ACCOUNT information */
 
#define DI_CONNECTABORT   38 /* connect request cancelled */
 
#define DI_TIMEDOUT   38 /* remote node or user crashed */
 
#define DI_UNREACHABLE   39 /* local timers expired due to ... */
 
#define DI_BADIMAGE   43 /* bad image data in connect */
 
#define DI_SERVMISMATCH   54 /* cryptographic service mismatch */
 
#define UC_OBJREJECT   0 /* object rejected connect */
 
#define UC_USERDISCONNECT   0 /* user disconnect */
 
#define UC_RESOURCES   1 /* insufficient resources (local or remote) */
 
#define UC_NOSUCHNODE   2 /* unrecognized node name */
 
#define UC_REMOTESHUT   3 /* remote node shutting down */
 
#define UC_NOSUCHOBJ   4 /* unrecognized object */
 
#define UC_INVOBJFORMAT   5 /* invalid object name format */
 
#define UC_OBJTOOBUSY   6 /* object too busy */
 
#define UC_NETWORKABORT   8 /* network abort */
 
#define UC_USERABORT   9 /* user abort */
 
#define UC_INVNODEFORMAT   10 /* invalid node name format */
 
#define UC_LOCALSHUT   11 /* local node shutting down */
 
#define UC_ACCESSREJECT   34 /* invalid access control information */
 
#define UC_NORESPONSE   38 /* no response from object */
 
#define UC_UNREACHABLE   39 /* node unreachable */
 

Typedefs

typedef nd_uint8_t byte
 
typedef nd_uint16_t word
 
typedef nd_uint32_t longword
 

Functions

static int print_decnet_ctlmsg (netdissect_options *, const union routehdr *, u_int, u_int)
 
static void print_t_info (netdissect_options *, u_int)
 
static void print_l1_routes (netdissect_options *, const u_char *, u_int)
 
static void print_l2_routes (netdissect_options *, const u_char *, u_int)
 
static void print_i_info (netdissect_options *, u_int)
 
static void print_elist (const u_char *, u_int)
 
static int print_nsp (netdissect_options *, const u_char *, u_int)
 
static void print_reason (netdissect_options *, u_int)
 
void decnet_print (netdissect_options *ndo, const u_char *ap, u_int length, u_int caplen)
 
const char * dnnum_string (netdissect_options *ndo, u_short dnaddr)
 

Variables

static const struct tok reason2str []
 

Macro Definition Documentation

◆ AREAMASK

#define AREAMASK   0176000 /* mask for area field */

Definition at line 64 of file print-decnet.c.

◆ AREASHIFT

#define AREASHIFT   10 /* bit-offset for area field */

Definition at line 65 of file print-decnet.c.

◆ COI_31

#define COI_31   1 /* version 3.1 */

Definition at line 305 of file print-decnet.c.

◆ COI_32

#define COI_32   0 /* version 3.2 */

Definition at line 304 of file print-decnet.c.

◆ COI_40

#define COI_40   2 /* version 4.0 */

Definition at line 306 of file print-decnet.c.

◆ COI_41

#define COI_41   3 /* version 4.1 */

Definition at line 307 of file print-decnet.c.

◆ COI_MASK

#define COI_MASK   3 /* mask for version field */

Definition at line 303 of file print-decnet.c.

◆ COS_DEFAULT

#define COS_DEFAULT   1 /* default value for field */

Definition at line 301 of file print-decnet.c.

◆ COS_MASK

#define COS_MASK   014 /* mask for flow control field */

Definition at line 297 of file print-decnet.c.

◆ COS_MESSAGE

#define COS_MESSAGE   010 /* message flow control */

Definition at line 300 of file print-decnet.c.

◆ COS_NONE

#define COS_NONE   0 /* no flow control */

Definition at line 298 of file print-decnet.c.

◆ COS_SEGMENT

#define COS_SEGMENT   04 /* segment flow control */

Definition at line 299 of file print-decnet.c.

◆ DC_COMPLETE

#define DC_COMPLETE   42 /* disconnect complete reason code */

Definition at line 319 of file print-decnet.c.

◆ DC_NOLINK

#define DC_NOLINK   41 /* no link terminate reason code */

Definition at line 318 of file print-decnet.c.

◆ DC_NORESOURCES

#define DC_NORESOURCES   1 /* no resource reason code */

Definition at line 317 of file print-decnet.c.

◆ DI_ABORT

#define DI_ABORT   9 /* user abort */

Definition at line 328 of file print-decnet.c.

◆ DI_BADACCESS

#define DI_BADACCESS   34 /* bad access control information */

Definition at line 331 of file print-decnet.c.

◆ DI_BADACCNT

#define DI_BADACCNT   36 /* bad ACCOUNT information */

Definition at line 332 of file print-decnet.c.

◆ DI_BADIMAGE

#define DI_BADIMAGE   43 /* bad image data in connect */

Definition at line 336 of file print-decnet.c.

◆ DI_CONNECTABORT

#define DI_CONNECTABORT   38 /* connect request cancelled */

Definition at line 333 of file print-decnet.c.

◆ DI_INVDEST

#define DI_INVDEST   5 /* invalid end user destination */

Definition at line 324 of file print-decnet.c.

◆ DI_LOCALRESRC

#define DI_LOCALRESRC   32 /* insufficient local resources */

Definition at line 329 of file print-decnet.c.

◆ DI_NOERROR

#define DI_NOERROR   0 /* user disconnect */

Definition at line 321 of file print-decnet.c.

◆ DI_NOUSER

#define DI_NOUSER   4 /* destination end user does not exist */

Definition at line 323 of file print-decnet.c.

◆ DI_PROTOCOL

#define DI_PROTOCOL   7 /* protocol error discovered */

Definition at line 327 of file print-decnet.c.

◆ DI_REMRESRC

#define DI_REMRESRC   6 /* insufficient remote resources */

Definition at line 325 of file print-decnet.c.

◆ DI_REMUSERRESRC

#define DI_REMUSERRESRC   33 /* insufficient remote user resources */

Definition at line 330 of file print-decnet.c.

◆ DI_SERVMISMATCH

#define DI_SERVMISMATCH   54 /* cryptographic service mismatch */

Definition at line 337 of file print-decnet.c.

◆ DI_SHUT

#define DI_SHUT   3 /* node is shutting down */

Definition at line 322 of file print-decnet.c.

◆ DI_TIMEDOUT

#define DI_TIMEDOUT   38 /* remote node or user crashed */

Definition at line 334 of file print-decnet.c.

◆ DI_TPA

#define DI_TPA   8 /* third party abort */

Definition at line 326 of file print-decnet.c.

◆ DI_UNREACHABLE

#define DI_UNREACHABLE   39 /* local timers expired due to ... */

Definition at line 335 of file print-decnet.c.

◆ HIORD

#define HIORD   0x000400aa /* high 32-bits of address (swapped) */

Definition at line 62 of file print-decnet.c.

◆ II_BLOCK

#define II_BLOCK   0100 /* blocking requested */

Definition at line 151 of file print-decnet.c.

◆ II_ENDNODE

#define II_ENDNODE   03 /* endnode */

Definition at line 148 of file print-decnet.c.

◆ II_L1ROUT

#define II_L1ROUT   02 /* level 1 router */

Definition at line 147 of file print-decnet.c.

◆ II_L2ROUT

#define II_L2ROUT   01 /* level 2 router */

Definition at line 146 of file print-decnet.c.

◆ II_NOMCAST

#define II_NOMCAST   040 /* no multicast traffic accepted */

Definition at line 150 of file print-decnet.c.

◆ II_TYPEMASK

#define II_TYPEMASK   03 /* mask for node type */

Definition at line 152 of file print-decnet.c.

◆ II_VERIF

#define II_VERIF   04 /* verification required */

Definition at line 149 of file print-decnet.c.

◆ LSI_DATA

#define LSI_DATA   0 /* data segment or message count */

Definition at line 293 of file print-decnet.c.

◆ LSI_INTM

#define LSI_INTM   0377 /* funny marker for int. message */

Definition at line 295 of file print-decnet.c.

◆ LSI_INTR

#define LSI_INTR   4 /* interrupt request count */

Definition at line 294 of file print-decnet.c.

◆ LSI_MASK

#define LSI_MASK   014 /* mask for interpretation field */

Definition at line 292 of file print-decnet.c.

◆ LSM_DONOTSEND

#define LSM_DONOTSEND   1 /* do not send data */

Definition at line 289 of file print-decnet.c.

◆ LSM_MASK

#define LSM_MASK   03 /* mask for modifier field */

Definition at line 287 of file print-decnet.c.

◆ LSM_NOCHANGE

#define LSM_NOCHANGE   0 /* no change */

Definition at line 288 of file print-decnet.c.

◆ LSM_SEND

#define LSM_SEND   2 /* send data */

Definition at line 290 of file print-decnet.c.

◆ MFS_BOM

#define MFS_BOM   040 /* beginning of message (data) */

Definition at line 261 of file print-decnet.c.

◆ MFS_CACK

#define MFS_CACK   040 /* connect acknowledgement */

Definition at line 268 of file print-decnet.c.

◆ MFS_CC

#define MFS_CC   040 /* connect confirm */

Definition at line 272 of file print-decnet.c.

◆ MFS_CI

#define MFS_CI   020 /* connect initiate */

Definition at line 271 of file print-decnet.c.

◆ MFS_DACK

#define MFS_DACK   0 /* data acknowledgement */

Definition at line 266 of file print-decnet.c.

◆ MFS_DC

#define MFS_DC   0100 /* disconnect confirm */

Definition at line 274 of file print-decnet.c.

◆ MFS_DI

#define MFS_DI   060 /* disconnect initiate */

Definition at line 273 of file print-decnet.c.

◆ MFS_EOM

#define MFS_EOM   0100 /* end of message (data) */

Definition at line 263 of file print-decnet.c.

◆ MFS_IACK

#define MFS_IACK   020 /* I/LS acknowledgement */

Definition at line 267 of file print-decnet.c.

◆ MFS_ILS

#define MFS_ILS   020 /* data or I/LS indicator */

Definition at line 260 of file print-decnet.c.

◆ MFS_INT

#define MFS_INT   040 /* interrupt message */

Definition at line 264 of file print-decnet.c.

◆ MFS_MOM

#define MFS_MOM   0 /* middle of message (data) */

Definition at line 262 of file print-decnet.c.

◆ MFS_NOP

#define MFS_NOP   0 /* no operation */

Definition at line 270 of file print-decnet.c.

◆ MFS_RCI

#define MFS_RCI   0140 /* retransmitted connect initiate */

Definition at line 275 of file print-decnet.c.

◆ MFT_ACK

#define MFT_ACK   04 /* acknowledgement message */

Definition at line 257 of file print-decnet.c.

◆ MFT_CTL

#define MFT_CTL   010 /* control message */

Definition at line 258 of file print-decnet.c.

◆ MFT_DATA

#define MFT_DATA   0 /* data message */

Definition at line 256 of file print-decnet.c.

◆ MNU_10

#define MNU_10   000 /* session V1.0 */

Definition at line 310 of file print-decnet.c.

◆ MNU_20

#define MNU_20   040 /* session V2.0 */

Definition at line 311 of file print-decnet.c.

◆ MNU_ACCESS

#define MNU_ACCESS   1 /* access control present */

Definition at line 312 of file print-decnet.c.

◆ MNU_INVKPROXY

#define MNU_INVKPROXY   4 /* invoke proxy field present */

Definition at line 314 of file print-decnet.c.

◆ MNU_MASK

#define MNU_MASK   140 /* mask for session control version */

Definition at line 309 of file print-decnet.c.

◆ MNU_UICPROXY

#define MNU_UICPROXY   8 /* use uic-based proxy */

Definition at line 315 of file print-decnet.c.

◆ MNU_USRDATA

#define MNU_USRDATA   2 /* user data field present */

Definition at line 313 of file print-decnet.c.

◆ ND_LONGJMP_FROM_TCHECK

#define ND_LONGJMP_FROM_TCHECK

Definition at line 33 of file print-decnet.c.

◆ NODEMASK

#define NODEMASK   01777 /* mask for node address field */

Definition at line 66 of file print-decnet.c.

◆ NSP_SUBMASK

#define NSP_SUBMASK   0160 /* mask to isolate subtype code */

Definition at line 253 of file print-decnet.c.

◆ NSP_SUBSHFT

#define NSP_SUBSHFT   4 /* shift to move subtype code */

Definition at line 254 of file print-decnet.c.

◆ NSP_TYPEMASK

#define NSP_TYPEMASK   014 /* mask to isolate type code */

Definition at line 252 of file print-decnet.c.

◆ P3_ECO

#define P3_ECO   3 /* ECO number (3) */

Definition at line 143 of file print-decnet.c.

◆ P3_UECO

#define P3_UECO   0 /* user ECO number (0) */

Definition at line 144 of file print-decnet.c.

◆ P3_VERS

#define P3_VERS   1 /* phase III version number (1) */

Definition at line 142 of file print-decnet.c.

◆ RI_COST

#define RI_COST (   x)    ((x)&0777)

Definition at line 245 of file print-decnet.c.

◆ RI_HOPS

#define RI_HOPS (   x)    (((x)>>10)&037)

Definition at line 246 of file print-decnet.c.

◆ RMF_CTLMASK

#define RMF_CTLMASK   017 /* mask for message type */

Definition at line 122 of file print-decnet.c.

◆ RMF_CTLMSG

#define RMF_CTLMSG   01 /* control message indicator */

Definition at line 123 of file print-decnet.c.

◆ RMF_EHELLO

#define RMF_EHELLO   015 /* endnode hello message */

Definition at line 130 of file print-decnet.c.

◆ RMF_FVER

#define RMF_FVER   0100 /* future version flag */

Definition at line 113 of file print-decnet.c.

◆ RMF_IE

#define RMF_IE   040 /* intra-ethernet packet */

Definition at line 111 of file print-decnet.c.

◆ RMF_INIT

#define RMF_INIT   01 /* initialization message */

Definition at line 124 of file print-decnet.c.

◆ RMF_L1ROUT

#define RMF_L1ROUT   07 /* level 1 routing message */

Definition at line 127 of file print-decnet.c.

◆ RMF_L2ROUT

#define RMF_L2ROUT   011 /* level 2 routing message */

Definition at line 128 of file print-decnet.c.

◆ RMF_LONG

#define RMF_LONG   6 /* long message format */

Definition at line 107 of file print-decnet.c.

◆ RMF_MASK

#define RMF_MASK   7 /* mask for message type */

Definition at line 105 of file print-decnet.c.

◆ RMF_PAD

#define RMF_PAD   0200 /* pad field */

Definition at line 114 of file print-decnet.c.

◆ RMF_PADMASK

#define RMF_PADMASK   0177 /* pad field mask */

Definition at line 115 of file print-decnet.c.

◆ RMF_RHELLO

#define RMF_RHELLO   013 /* router hello message */

Definition at line 129 of file print-decnet.c.

◆ RMF_RQR

#define RMF_RQR   010 /* request return to sender */

Definition at line 109 of file print-decnet.c.

◆ RMF_RTS

#define RMF_RTS   020 /* returning to sender */

Definition at line 110 of file print-decnet.c.

◆ RMF_SHORT

#define RMF_SHORT   2 /* short message format */

Definition at line 106 of file print-decnet.c.

◆ RMF_TEST

#define RMF_TEST   05 /* hello and test message */

Definition at line 126 of file print-decnet.c.

◆ RMF_VER

#define RMF_VER   03 /* verification message */

Definition at line 125 of file print-decnet.c.

◆ SGQ_ACK

#define SGQ_ACK   0100000 /* ack */

Definition at line 277 of file print-decnet.c.

◆ SGQ_DELAY

#define SGQ_DELAY   010000 /* ack delay flag */

Definition at line 283 of file print-decnet.c.

◆ SGQ_EOM

#define SGQ_EOM   0100000 /* pseudo flag for end-of-message */

Definition at line 285 of file print-decnet.c.

◆ SGQ_MASK

#define SGQ_MASK   07777 /* mask to isolate seq # */

Definition at line 281 of file print-decnet.c.

◆ SGQ_NAK

#define SGQ_NAK   0110000 /* negative ack */

Definition at line 278 of file print-decnet.c.

◆ SGQ_OACK

#define SGQ_OACK   0120000 /* other channel ack */

Definition at line 279 of file print-decnet.c.

◆ SGQ_ONAK

#define SGQ_ONAK   0130000 /* other channel negative ack */

Definition at line 280 of file print-decnet.c.

◆ SGQ_OTHER

#define SGQ_OTHER   020000 /* other channel qualifier */

Definition at line 282 of file print-decnet.c.

◆ TESTDATA

#define TESTDATA   0252 /* test data bytes */

Definition at line 154 of file print-decnet.c.

◆ TESTLEN

#define TESTLEN   1 /* length of transmitted test data */

Definition at line 155 of file print-decnet.c.

◆ TI_BLOCK

#define TI_BLOCK   010 /* blocking requested */

Definition at line 136 of file print-decnet.c.

◆ TI_ENDNODE

#define TI_ENDNODE   03 /* endnode */

Definition at line 134 of file print-decnet.c.

◆ TI_L1ROUT

#define TI_L1ROUT   02 /* level 1 router */

Definition at line 133 of file print-decnet.c.

◆ TI_L2ROUT

#define TI_L2ROUT   01 /* level 2 router */

Definition at line 132 of file print-decnet.c.

◆ TI_VERIF

#define TI_VERIF   04 /* verification required */

Definition at line 135 of file print-decnet.c.

◆ UC_ACCESSREJECT

#define UC_ACCESSREJECT   34 /* invalid access control information */

Definition at line 351 of file print-decnet.c.

◆ UC_INVNODEFORMAT

#define UC_INVNODEFORMAT   10 /* invalid node name format */

Definition at line 349 of file print-decnet.c.

◆ UC_INVOBJFORMAT

#define UC_INVOBJFORMAT   5 /* invalid object name format */

Definition at line 345 of file print-decnet.c.

◆ UC_LOCALSHUT

#define UC_LOCALSHUT   11 /* local node shutting down */

Definition at line 350 of file print-decnet.c.

◆ UC_NETWORKABORT

#define UC_NETWORKABORT   8 /* network abort */

Definition at line 347 of file print-decnet.c.

◆ UC_NORESPONSE

#define UC_NORESPONSE   38 /* no response from object */

Definition at line 352 of file print-decnet.c.

◆ UC_NOSUCHNODE

#define UC_NOSUCHNODE   2 /* unrecognized node name */

Definition at line 342 of file print-decnet.c.

◆ UC_NOSUCHOBJ

#define UC_NOSUCHOBJ   4 /* unrecognized object */

Definition at line 344 of file print-decnet.c.

◆ UC_OBJREJECT

#define UC_OBJREJECT   0 /* object rejected connect */

Definition at line 339 of file print-decnet.c.

◆ UC_OBJTOOBUSY

#define UC_OBJTOOBUSY   6 /* object too busy */

Definition at line 346 of file print-decnet.c.

◆ UC_REMOTESHUT

#define UC_REMOTESHUT   3 /* remote node shutting down */

Definition at line 343 of file print-decnet.c.

◆ UC_RESOURCES

#define UC_RESOURCES   1 /* insufficient resources (local or remote) */

Definition at line 341 of file print-decnet.c.

◆ UC_UNREACHABLE

#define UC_UNREACHABLE   39 /* node unreachable */

Definition at line 353 of file print-decnet.c.

◆ UC_USERABORT

#define UC_USERABORT   9 /* user abort */

Definition at line 348 of file print-decnet.c.

◆ UC_USERDISCONNECT

#define UC_USERDISCONNECT   0 /* user disconnect */

Definition at line 340 of file print-decnet.c.

◆ VE_ECO

#define VE_ECO   0 /* ECO number */

Definition at line 139 of file print-decnet.c.

◆ VE_UECO

#define VE_UECO   0 /* user ECO number (0) */

Definition at line 140 of file print-decnet.c.

◆ VE_VERS

#define VE_VERS   2 /* version number (2) */

Definition at line 138 of file print-decnet.c.

◆ VIS_MASK

#define VIS_MASK   077 /* visit field mask */

Definition at line 117 of file print-decnet.c.

Typedef Documentation

◆ byte

typedef nd_uint8_t byte

Definition at line 40 of file print-decnet.c.

◆ longword

Definition at line 49 of file print-decnet.c.

◆ word

typedef nd_uint16_t word

Definition at line 48 of file print-decnet.c.

Function Documentation

◆ decnet_print()

◆ dnnum_string()

const char* dnnum_string ( netdissect_options ndo,
u_short  dnaddr 
)

◆ print_decnet_ctlmsg()

◆ print_elist()

static void print_elist ( const u_char *  elp,
u_int  len 
)
static

Definition at line 789 of file print-decnet.c.

Referenced by print_decnet_ctlmsg().

◆ print_i_info()

static void print_i_info ( netdissect_options ndo,
u_int  info 
)
static

Definition at line 770 of file print-decnet.c.

References II_BLOCK, II_ENDNODE, II_L1ROUT, II_L2ROUT, II_NOMCAST, II_TYPEMASK, II_VERIF, info(), and ND_PRINT.

Referenced by print_decnet_ctlmsg().

◆ print_l1_routes()

static void print_l1_routes ( netdissect_options ndo,
const u_char *  rp,
u_int  len 
)
static

Definition at line 716 of file print-decnet.c.

References GET_LE_U_2, info(), ND_PRINT, ND_TCHECK_LEN, RI_COST, and RI_HOPS.

Referenced by print_decnet_ctlmsg().

◆ print_l2_routes()

static void print_l2_routes ( netdissect_options ndo,
const u_char *  rp,
u_int  len 
)
static

Definition at line 743 of file print-decnet.c.

References GET_LE_U_2, info(), ND_PRINT, ND_TCHECK_LEN, RI_COST, and RI_HOPS.

Referenced by print_decnet_ctlmsg().

◆ print_nsp()

◆ print_reason()

static void print_reason ( netdissect_options ndo,
u_int  reason 
)
static

Definition at line 1162 of file print-decnet.c.

References ND_PRINT, reason2str, and tok2str().

Referenced by print_nsp().

◆ print_t_info()

static void print_t_info ( netdissect_options ndo,
u_int  info 
)
static

Definition at line 699 of file print-decnet.c.

References info(), ND_PRINT, TI_BLOCK, TI_ENDNODE, TI_L1ROUT, TI_L2ROUT, and TI_VERIF.

Referenced by print_decnet_ctlmsg().

Variable Documentation

◆ reason2str

const struct tok reason2str[]
static
Initial value:
= {
{ 0 , "object rejected connect" },
{ 1 , "insufficient resources" },
{ 2 , "unrecognized node name" },
{ 3 , "node is shutting down" },
{ 4 , "unrecognized object" },
{ 5 , "invalid object name format" },
{ 6 , "object too busy" },
{ 7 , "protocol error discovered" },
{ 8 , "third party abort" },
{ 9 , "user abort" },
{ 10 , "invalid node name format" },
{ 11 , "local node shutting down" },
{ 32 , "insufficient local resources" },
{ 33 , "insufficient remote user resources" },
{ 34 , "invalid access control information" },
{ 36 , "bad ACCOUNT information" },
{ 38 , "no response from object" },
{ 39 , "node unreachable" },
{ 41 , "no link terminate" },
{ 42 , "disconnect complete" },
{ 43 , "bad image data in connect" },
{ 54 , "cryptographic service mismatch" },
{ 0, NULL }
}

Definition at line 795 of file print-decnet.c.

Referenced by print_reason().