Rev 4365 | Rev 4850 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4365 | Rev 4366 | ||
---|---|---|---|
Line 169... | Line 169... | ||
169 | ; mov [eax + SOCKET.errorcode], ebx |
169 | ; mov [eax + SOCKET.errorcode], ebx |
Line -... | Line 170... | ||
- | 170 | ||
- | 171 | ||
- | 172 | ||
- | 173 | ||
- | 174 | ;------------------------- |
|
- | 175 | ; |
|
- | 176 | ; TCP_disconnect |
|
- | 177 | ; |
|
- | 178 | ; IN: eax = socket ptr |
|
- | 179 | ; OUT: eax = socket ptr / 0 |
|
Line -... | Line 180... | ||
- | 180 | ; |
|
Line -... | Line 181... | ||
- | 181 | ;------------------------- |
|
- | 182 | align 4 |
|
- | 183 | TCP_disconnect: |
|
- | 184 | ||
- | 185 | DEBUGF DEBUG_NETWORK_VERBOSE, "TCP_disconnect: %x\n", eax |
|
- | 186 | ||
- | 187 | cmp [eax + TCP_SOCKET.t_state], TCPS_ESTABLISHED |
|
- | 188 | jb TCP_close ; Connection not yet synchronised, just get rid of the socket |
|
- | 189 | ||
- | 190 | ; TODO: implement LINGER |
|
- | 191 | ||
- | 192 | call SOCKET_is_disconnecting |
|
- | 193 | call TCP_usrclosed |
|
- | 194 | ||
- | 195 | test eax, eax |
|
- | 196 | jz @f |
|
Line 170... | Line 197... | ||
170 | 197 | push eax |
|
171 | 198 | call TCP_output |
|
172 | 199 | pop eax |
|
173 | 200 | @@: |
|
174 | 201 | ||
175 | 202 | ret |
|
176 | 203 | ||
177 | 204 | ||
178 | ;------------------------- |
205 | ;------------------------- |
179 | ; |
206 | ; |
Line 190... | Line 217... | ||
190 | 217 | ||
191 | ;;; TODO: update RTT and mean deviation |
218 | ;;; TODO: update RTT and mean deviation |
Line 192... | Line 219... | ||
192 | ;;; TODO: update slow start threshold |
219 | ;;; TODO: update slow start threshold |
193 | 220 | ||
- | 221 | call SOCKET_is_disconnected |
|
- | 222 | call SOCKET_free |
|
Line 194... | Line 223... | ||
194 | call SOCKET_is_disconnected |
223 |