Rev 5565 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5565 | Rev 5984 | ||
---|---|---|---|
Line 21... | Line 21... | ||
21 | timer_flag_2msl = 1 shl 2 |
21 | timer_flag_2msl = 1 shl 2 |
22 | timer_flag_persist = 1 shl 3 |
22 | timer_flag_persist = 1 shl 3 |
23 | timer_flag_wait = 1 shl 4 |
23 | timer_flag_wait = 1 shl 4 |
Line 24... | Line -... | ||
24 | - | ||
25 | - | ||
26 | ;---------------------- |
- | |
27 | ; 160 ms timer |
24 | |
Line 28... | Line 25... | ||
28 | ;---------------------- |
25 | |
29 | macro TCP_timer_160ms { |
26 | macro TCP_timer_160ms { |
Line 148... | Line 145... | ||
148 | 145 | ||
Line 149... | Line 146... | ||
149 | DEBUGF DEBUG_NETWORK_VERBOSE, "socket %x: 2MSL timer expired\n", eax |
146 | DEBUGF DEBUG_NETWORK_VERBOSE, "socket %x: 2MSL timer expired\n", eax |
150 | 147 | ||
151 | .check_more5: |
148 | .check_more5: |
152 | dec [eax + TCP_SOCKET.timer_persist] |
149 | dec [eax + TCP_SOCKET.timer_persist] |
153 | jnz .loop |
150 | jnz .check_more6 |
Line 154... | Line 151... | ||
154 | test [eax + TCP_SOCKET.timer_flags], timer_flag_persist |
151 | test [eax + TCP_SOCKET.timer_flags], timer_flag_persist |
Line 155... | Line 152... | ||
155 | jz .loop |
152 | jz .check_more6 |
156 | 153 | ||
157 | DEBUGF DEBUG_NETWORK_VERBOSE, "socket %x: persist timer expired\n", eax |
154 | DEBUGF DEBUG_NETWORK_VERBOSE, "socket %x: persist timer expired\n", eax |
158 | 155 | ||
159 | call TCP_set_persist |
156 | call TCP_set_persist |
160 | mov [eax + TCP_SOCKET.t_force], 1 |
157 | mov [eax + TCP_SOCKET.t_force], 1 |
Line -... | Line 158... | ||
- | 158 | push eax |
|
- | 159 | call TCP_output |
|
- | 160 | pop eax |
|
- | 161 | mov [eax + TCP_SOCKET.t_force], 0 |
|
161 | push eax |
162 | |
Line 162... | Line -... | ||
162 | call TCP_output |
- | |
- | 163 | .check_more6: |
|
Line -... | Line 164... | ||
- | 164 | dec [eax + TCP_SOCKET.timer_timed_wait] |
|
- | 165 | jnz .loop |
|
- | 166 | test [eax + TCP_SOCKET.timer_flags], timer_flag_wait |
|
Line -... | Line 167... | ||
- | 167 | jz .loop |
|
Line 163... | Line 168... | ||
163 | pop eax |
168 | |
Line -... | Line 169... | ||
- | 169 | DEBUGF DEBUG_NETWORK_VERBOSE, "socket %x: timed wait timer expired\n", eax |
|
- | 170 | ||
- | 171 | push [eax + SOCKET.NextPtr] |
|
- | 172 | call TCP_close |
|
- | 173 | pop eax |
|
- | 174 | ||
- | 175 | jmp .check_only |
|
- | 176 | ||
- | 177 | endp |
|
- | 178 | ||
- | 179 | ||
164 | mov [eax + TCP_SOCKET.t_force], 0 |
180 | ;-----------------------------------------------------------------; |
Line 165... | Line 181... | ||
165 | 181 | ; ; |
|
Line 166... | Line 182... | ||
166 | jmp .loop |
182 | ; TCP_cancel_timers ; |
167 | 183 | ; ; |