1/*	$NetBSD: tp_events.h,v 1.5 1996/02/13 22:10:58 christos Exp $	*/
2
3#ifndef _NETISO_TP_EVENTS_H_
4#define _NETISO_TP_EVENTS_H_
5
6struct tp_event {
7	int             ev_number;
8	struct timeval  e_time;
9#define TM_inact 0x0
10#define TM_retrans 0x1
11#define TM_sendack 0x2
12#define TM_notused 0x3
13
14	union {
15		struct {
16			SeqNum          e_low;
17			SeqNum          e_high;
18			int             e_retrans;
19		}               EV_TM_reference;
20
21#define TM_reference 0x4
22		struct {
23			SeqNum          e_low;
24			SeqNum          e_high;
25			int             e_retrans;
26		}               EV_TM_data_retrans;
27
28#define TM_data_retrans 0x5
29		struct {
30			u_char          e_reason;
31		}               EV_ER_TPDU;
32
33#define ER_TPDU 0x6
34		struct {
35			struct mbuf    *e_data;	/* first field */
36			int             e_datalen;	/* 2nd field */
37			u_int           e_cdt;
38		}               EV_CR_TPDU;
39
40#define CR_TPDU 0x7
41		struct {
42			struct mbuf    *e_data;	/* first field */
43			int             e_datalen;	/* 2nd field */
44			u_short         e_sref;
45			u_char          e_reason;
46		}               EV_DR_TPDU;
47
48#define DR_TPDU 0x8
49#define DC_TPDU 0x9
50		struct {
51			struct mbuf    *e_data;	/* first field */
52			int             e_datalen;	/* 2nd field */
53			u_short         e_sref;
54			u_int           e_cdt;
55		}               EV_CC_TPDU;
56
57#define CC_TPDU 0xa
58		struct {
59			u_int           e_cdt;
60			SeqNum          e_seq;
61			SeqNum          e_subseq;
62			u_char          e_fcc_present;
63		}               EV_AK_TPDU;
64
65#define AK_TPDU 0xb
66		struct {
67			struct mbuf    *e_data;	/* first field */
68			int             e_datalen;	/* 2nd field */
69			u_int           e_eot;
70			SeqNum          e_seq;
71		}               EV_DT_TPDU;
72
73#define DT_TPDU 0xc
74		struct {
75			struct mbuf    *e_data;	/* first field */
76			int             e_datalen;	/* 2nd field */
77			SeqNum          e_seq;
78		}               EV_XPD_TPDU;
79
80#define XPD_TPDU 0xd
81		struct {
82			SeqNum          e_seq;
83		}               EV_XAK_TPDU;
84
85#define XAK_TPDU 0xe
86#define T_CONN_req 0xf
87		struct {
88			u_char          e_reason;
89		}               EV_REQ_TPDU;
90
91#define T_DISC_req 0x10
92#define T_LISTEN_req 0x11
93#define T_DATA_req 0x12
94#define T_XPD_req 0x13
95#define T_USR_rcvd 0x14
96#define T_USR_Xrcvd 0x15
97#define T_DETACH 0x16
98#define T_NETRESET 0x17
99#define T_ACPT_req 0x18
100	}               ev_union;
101};				/* end struct event */
102
103#define tp_NEVENTS 0x19
104
105#endif /* !_NETISO_TP_EVENTS_H_ */
106