Rev 6011 | Rev 6512 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 6011 | Rev 6476 | ||
---|---|---|---|
Line 12... | Line 12... | ||
12 | ;; GNU GENERAL PUBLIC LICENSE ;; |
12 | ;; GNU GENERAL PUBLIC LICENSE ;; |
13 | ;; Version 2, June 1991 ;; |
13 | ;; Version 2, June 1991 ;; |
14 | ;; ;; |
14 | ;; ;; |
15 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
15 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 16... | Line 16... | ||
16 | 16 | ||
Line 17... | Line 17... | ||
17 | $Revision: 6011 $ |
17 | $Revision: 6476 $ |
18 | 18 | ||
19 | align 4 |
19 | align 4 |
20 | iglobal |
20 | iglobal |
Line 76... | Line 76... | ||
76 | 76 | ||
Line 77... | Line 77... | ||
77 | macro tcp_rcvseqinit ptr { |
77 | macro tcp_rcvseqinit ptr { |
78 | 78 | ||
79 | push edi |
79 | push edi |
80 | mov edi, [ptr + TCP_SOCKET.IRS] |
80 | mov edi, [ptr + TCP_SOCKET.IRS] |
81 | inc edi |
81 | inc edi ; SYN ocupies a sequence number |
82 | mov [ptr + TCP_SOCKET.RCV_NXT], edi |
82 | mov [ptr + TCP_SOCKET.RCV_NXT], edi |
Line 83... | Line 83... | ||
83 | mov [ptr + TCP_SOCKET.RCV_ADV], edi |
83 | mov [ptr + TCP_SOCKET.RCV_ADV], edi |
Line 214... | Line 214... | ||
214 | ;;; TODO: update slow start threshold |
214 | ;;; TODO: update slow start threshold |
Line 215... | Line 215... | ||
215 | 215 | ||
216 | call socket_is_disconnected |
216 | call socket_is_disconnected |
Line -... | Line 217... | ||
- | 217 | call socket_free |
|
- | 218 | ||
217 | call socket_free |
219 | inc [TCPS_closed] |
218 | 220 | ||
Line 239... | Line 241... | ||
239 | DEBUGF DEBUG_NETWORK_VERBOSE, "TCP_outflags: socket=%x flags=%x\n", eax, dl |
241 | DEBUGF DEBUG_NETWORK_VERBOSE, "TCP_outflags: socket=%x flags=%x\n", eax, dl |
Line 240... | Line 242... | ||
240 | 242 | ||
Line 241... | Line 243... | ||
241 | ret |
243 | ret |
242 | - | ||
243 | .flaglist: |
244 | |
244 | 245 | .flaglist: |
|
245 | db TH_RST + TH_ACK ; TCPS_CLOSED |
246 | db TH_RST + TH_ACK ; TCPS_CLOSED |
246 | db 0 ; TCPS_LISTEN |
247 | db 0 ; TCPS_LISTEN |
247 | db TH_SYN ; TCPS_SYN_SENT |
248 | db TH_SYN ; TCPS_SYN_SENT |
248 | db TH_SYN + TH_ACK ; TCPS_SYN_RECEIVED |
249 | db TH_SYN + TH_ACK ; TCPS_SYN_RECEIVED |
249 | db TH_ACK ; TCPS_ESTABLISHED |
250 | db TH_ACK ; TCPS_ESTABLISHED |
250 | db TH_ACK ; TCPS_CLOSE_WAIT |
251 | db TH_ACK ; TCPS_CLOSE_WAIT |
251 | db TH_FIN + TH_ACK ; TCPS_FIN_WAIT_1 |
252 | db TH_FIN + TH_ACK ; TCPS_FIN_WAIT_1 |
252 | db TH_FIN + TH_ACK ; TCPS_CLOSING |
253 | db TH_FIN + TH_ACK ; TCPS_CLOSING |
253 | db TH_FIN + TH_ACK ; TCPS_LAST_ACK |
254 | db TH_FIN + TH_ACK ; TCPS_LAST_ACK |
254 | db TH_ACK ; TCPS_FIN_WAIT_2 |
- | |
255 | db TH_ACK ; TCPS_TIMED_WAIT |
- | |
256 | - | ||
257 | - | ||
Line 258... | Line 255... | ||
258 | 255 | db TH_ACK ; TCPS_FIN_WAIT_2 |
|
259 | 256 | db TH_ACK ; TCPS_TIME_WAIT |
|
260 | 257 | ||
Line 500... | Line 497... | ||
500 | align 4 |
497 | align 4 |
501 | tcp_xmit_timer: |
498 | tcp_xmit_timer: |
Line 502... | Line 499... | ||
502 | 499 | ||
Line 503... | Line 500... | ||
503 | DEBUGF DEBUG_NETWORK_VERBOSE, "TCP_xmit_timer: socket=0x%x rtt=%d0ms\n", ebx, eax |
500 | DEBUGF DEBUG_NETWORK_VERBOSE, "TCP_xmit_timer: socket=0x%x rtt=%d0ms\n", ebx, eax |
Line 504... | Line 501... | ||
504 | 501 | ||
505 | ;TODO: update stats |
502 | inc [TCPS_rttupdated] |
Line 506... | Line 503... | ||
506 | 503 |