Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 1763 → Rev 1772

/kernel/branches/net/network/tcp_input.inc
1101,11 → 1101,11
@@:
 
 
;; TODO: use zero flag as 'ourfinisacked'
 
 
 
 
 
; General ACK handling complete
; Now do the state-specific ones
 
1126,25 → 1126,46
dd .ack_tw ;TCB_TIMED_WAIT
 
 
.ack_fw1: ; 963
.ack_fw1:
jz .ack_processed
 
test [ebx + SOCKET.state], SO_CANTRCVMORE
jnz @f
;;soisdisconnected(ebx)
mov [ebx + TCP_SOCKET.timer_timed_wait], TCP_time_max_idle
@@:
 
mov [ebx + TCP_SOCKET.t_state], TCB_FIN_WAIT_2
jmp .ack_processed
 
.ack_c: ; 958
 
.ack_c:
jz .ack_processed
 
mov [ebx + TCP_SOCKET.t_state], TCB_TIMED_WAIT
call TCP_cancel_timers
mov [ebx + TCP_SOCKET.timer_timed_wait], 2 * TCP_time_MSL
;;soisdisconnected(ebx)
jmp .ack_processed
 
.ack_la: ; 999
 
jmp .ack_processed
.ack_la:
jz .ack_processed
 
.ack_tw: ; 1010
call TCP_close
jmp .drop
 
jmp .ack_processed
 
.ack_tw:
mov [ebx + TCP_SOCKET.timer_timed_wait], 2 * TCP_time_MSL
jmp .drop_after_ack
 
 
 
 
 
 
 
.reset_dupacks: ; We got a new ACK, reset duplicate ACK counter
 
mov [ebx + TCP_SOCKET.t_dupacks], 0