|
|
1.1 root 1: /* $Header$ */
2: /* $Source$ */
3: struct tp_event {
4: int ev_number;
5: struct timeval e_time;
6: #define TM_inact 0x0
7: #define TM_retrans 0x1
8: #define TM_sendack 0x2
9: #define TM_notused 0x3
10:
11: union{
12: struct { SeqNum e_low; SeqNum e_high; int e_retrans; } EV_TM_reference;
13:
14: #define TM_reference 0x4
15: struct { SeqNum e_low; SeqNum e_high; int e_retrans; } EV_TM_data_retrans;
16:
17: #define TM_data_retrans 0x5
18: struct {
19: u_char e_reason;
20: } EV_ER_TPDU;
21:
22: #define ER_TPDU 0x6
23: struct { struct mbuf *e_data; /* first field */
24: int e_datalen; /* 2nd field */
25: u_int e_cdt;
26: } EV_CR_TPDU;
27:
28: #define CR_TPDU 0x7
29: struct { struct mbuf *e_data; /* first field */
30: int e_datalen; /* 2nd field */
31: u_short e_sref;
32: u_char e_reason;
33: } EV_DR_TPDU;
34:
35: #define DR_TPDU 0x8
36: #define DC_TPDU 0x9
37: struct { struct mbuf *e_data; /* first field */
38: int e_datalen; /* 2nd field */
39: u_short e_sref;
40: u_int e_cdt;
41: } EV_CC_TPDU;
42:
43: #define CC_TPDU 0xa
44: struct { u_int e_cdt;
45: SeqNum e_seq;
46: SeqNum e_subseq;
47: u_char e_fcc_present;
48: } EV_AK_TPDU;
49:
50: #define AK_TPDU 0xb
51: struct { struct mbuf *e_data; /* first field */
52: int e_datalen; /* 2nd field */
53: u_int e_eot;
54: SeqNum e_seq;
55: } EV_DT_TPDU;
56:
57: #define DT_TPDU 0xc
58: struct { struct mbuf *e_data; /* first field */
59: int e_datalen; /* 2nd field */
60: SeqNum e_seq;
61: } EV_XPD_TPDU;
62:
63: #define XPD_TPDU 0xd
64: struct { SeqNum e_seq; } EV_XAK_TPDU;
65:
66: #define XAK_TPDU 0xe
67: #define T_CONN_req 0xf
68: struct { u_char e_reason; } EV_T_DISC_req;
69:
70: #define T_DISC_req 0x10
71: #define T_LISTEN_req 0x11
72: #define T_DATA_req 0x12
73: #define T_XPD_req 0x13
74: #define T_USR_rcvd 0x14
75: #define T_USR_Xrcvd 0x15
76: #define T_DETACH 0x16
77: #define T_NETRESET 0x17
78: #define T_ACPT_req 0x18
79: }ev_union;
80: };/* end struct event */
81:
82: #define tp_NEVENTS 0x19
83:
84: #define ATTR(X)ev_union.EV_/**/X/**/
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.