Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
3545 | hidnplayr | 1 | struct LHEAD |
2 | next dd ? ;next object in list |
||
3 | prev dd ? ;prev object in list |
||
4 | ends |
||
5 | |||
6 | struct MUTEX |
||
7 | lhead LHEAD |
||
8 | count dd ? |
||
9 | ends |
||
10 | |||
11 | |||
12 | struct SOCKET |
||
13 | |||
14 | NextPtr dd ? ; pointer to next socket in list |
||
15 | PrevPtr dd ? ; pointer to previous socket in list |
||
16 | Number dd ? ; socket number |
||
17 | |||
18 | mutex MUTEX |
||
19 | |||
20 | PID dd ? ; application process id |
||
21 | Domain dd ? ; INET/UNIX/.. |
||
22 | Type dd ? ; RAW/STREAM/DGRAP |
||
23 | Protocol dd ? ; ICMP/IPv4/ARP/TCP/UDP |
||
24 | errorcode dd ? |
||
25 | device dd ? |
||
26 | |||
27 | options dd ? |
||
28 | state dd ? |
||
29 | backlog dw ? ; how many incomming connections that can be queued |
||
30 | |||
31 | snd_proc dd ? |
||
32 | rcv_proc dd ? |
||
33 | |||
34 | ends |
||
35 | |||
36 | struct IP_SOCKET SOCKET |
||
37 | |||
38 | LocalIP rd 4 ; network byte order |
||
39 | RemoteIP rd 4 ; network byte order |
||
40 | |||
41 | ends |
||
42 | |||
43 | struct TCP_SOCKET IP_SOCKET |
||
44 | |||
45 | LocalPort dw ? ; network byte order |
||
46 | RemotePort dw ? ; network byte order |
||
47 | |||
48 | t_state dd ? ; TCB state |
||
49 | t_rxtshift db ? |
||
50 | rb 3 ; align |
||
51 | t_rxtcur dd ? |
||
52 | t_dupacks dd ? |
||
53 | t_maxseg dd ? |
||
54 | t_force dd ? |
||
55 | t_flags dd ? |
||
56 | |||
57 | ;--------------- |
||
58 | ; RFC783 page 21 |
||
59 | |||
60 | ; send sequence |
||
61 | SND_UNA dd ? ; sequence number of unack'ed sent Packets |
||
62 | SND_NXT dd ? ; next send sequence number to use |
||
63 | SND_UP dd ? ; urgent pointer |
||
64 | SND_WL1 dd ? ; window minus one |
||
65 | SND_WL2 dd ? ; |
||
66 | ISS dd ? ; initial send sequence number |
||
67 | SND_WND dd ? ; send window |
||
68 | |||
69 | ; receive sequence |
||
70 | RCV_WND dd ? ; receive window |
||
71 | RCV_NXT dd ? ; next receive sequence number to use |
||
72 | RCV_UP dd ? ; urgent pointer |
||
73 | IRS dd ? ; initial receive sequence number |
||
74 | |||
75 | ;--------------------- |
||
76 | ; Additional variables |
||
77 | |||
78 | ; receive variables |
||
79 | RCV_ADV dd ? |
||
80 | |||
81 | ; retransmit variables |
||
82 | SND_MAX dd ? |
||
83 | |||
84 | ; congestion control |
||
85 | SND_CWND dd ? |
||
86 | SND_SSTHRESH dd ? |
||
87 | |||
88 | ;---------------------- |
||
89 | ; Transmit timing stuff |
||
90 | t_idle dd ? |
||
91 | t_rtt dd ? |
||
92 | t_rtseq dd ? |
||
93 | t_srtt dd ? |
||
94 | t_rttvar dd ? |
||
95 | t_rttmin dd ? |
||
96 | max_sndwnd dd ? |
||
97 | |||
98 | ;----------------- |
||
99 | ; Out-of-band data |
||
100 | t_oobflags dd ? |
||
101 | t_iobc dd ? |
||
102 | t_softerror dd ? |
||
103 | |||
104 | |||
105 | ;--------- |
||
106 | ; RFC 1323 ; the order of next 4 elements may not change |
||
107 | |||
108 | SND_SCALE db ? |
||
109 | RCV_SCALE db ? |
||
110 | requested_s_scale db ? |
||
111 | request_r_scale db ? |
||
112 | |||
113 | ts_recent dd ? ; a copy of the most-recent valid timestamp from the other end |
||
114 | ts_recent_age dd ? |
||
115 | last_ack_sent dd ? |
||
116 | |||
117 | |||
118 | ;------- |
||
119 | ; Timers |
||
120 | timer_retransmission dd ? ; rexmt |
||
121 | timer_persist dd ? |
||
122 | timer_keepalive dd ? ; keepalive/syn timeout |
||
123 | timer_timed_wait dd ? ; also used as 2msl timer |
||
124 | |||
125 | ; extra |
||
126 | |||
127 | ts_ecr dd ? ; timestamp echo reply |
||
128 | ts_val dd ? |
||
129 | temp_bits db ? |
||
130 | |||
131 | ends |
||
132 | |||
133 | struct UDP_SOCKET IP_SOCKET |
||
134 | |||
135 | LocalPort dw ? ; network byte order |
||
136 | RemotePort dw ? ; network byte order |
||
137 | firstpacket db ? |
||
138 | |||
139 | ends |
||
140 | |||
141 | |||
142 | struct ICMP_SOCKET IP_SOCKET |
||
143 | |||
144 | Identifier dw ? |
||
145 | |||
146 | ends |
||
147 | |||
148 | |||
149 | struct RING_BUFFER |
||
150 | |||
151 | start_ptr dd ? ; Pointer to start of buffer |
||
152 | end_ptr dd ? ; pointer to end of buffer |
||
153 | read_ptr dd ? ; Read pointer |
||
154 | write_ptr dd ? ; Write pointer |
||
155 | size dd ? ; Number of bytes buffered |
||
156 | |||
157 | ends |
||
158 | |||
159 | struct STREAM_SOCKET TCP_SOCKET |
||
160 | |||
161 | rcv RING_BUFFER |
||
162 | snd RING_BUFFER |
||
163 | |||
164 | ends |