Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 5441 → Rev 5442

/kernel/trunk/network/tcp_input.inc
394,13 → 394,18
 
pop ecx
cmp eax, TCP_PAWS_IDLE
jle .drop_after_ack ; TODO: update stats
jle .paws_drop
push ecx
 
mov [ebx + TCP_SOCKET.ts_recent], 0 ; timestamp was invalid, fix it.
.no_paws:
jmp .opt_loop
 
.paws_drop:
inc [TCPS_rcvduppack] ; update stats
add [TCPS_rcvdupbyte], ecx
inc [TCPS_pawsdrop]
jmp .drop_after_ack
 
.no_options:
 
pop ecx
630,6 → 635,8
or [ebx + TCP_SOCKET.t_flags], TF_ACKNOW
mov eax, ecx
 
inc [TCPS_rcvpartduppack]
 
;;; TODO: update stats
 
;-----------------------------------------------
662,7 → 669,7
 
mov eax, ebx
call TCP_close
;;; TODO: update stats
inc [TCPS_rcvafterclose]
jmp .respond_seg_reset
 
;----------------------------------------
985,17 → 992,14
mov eax, [edx + TCP_header.AckNumber]
cmp eax, [ebx + TCP_SOCKET.SND_MAX]
jbe @f
 
;;; TODO: update stats
inc [TCPS_rcvacktoomuch]
jmp .drop_after_ack
 
@@:
 
mov edi, [edx + TCP_header.AckNumber]
sub edi, [ebx + TCP_SOCKET.SND_UNA] ; now we got the number of acked bytes in edi
 
;;; TODO: update stats
 
inc [TCPS_rcvackpack]
add [TCPS_rcvackbyte], edi
DEBUGF DEBUG_NETWORK_VERBOSE, "TCP_input: acceptable ACK for %u bytes\n", edi
 
;------------------------------------------
1209,6 → 1213,8
test [edx + TCP_header.Flags], TH_SYN
jz .drop
 
inc [TCPS_accepts] ; update stats
 
;;; TODO: check if it's a broadcast or multicast, and drop if so
 
push dword [edi] ; Ipv4 source addres