Subversion Repositories Kolibri OS

Rev

Rev 1183 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1183 Rev 1288
Line 14... Line 14...
14
;;         Added a timer per socket to allow delays when        ;;
14
;;         Added a timer per socket to allow delays when        ;;
15
;;         rx window gets below 1KB                             ;;
15
;;         rx window gets below 1KB                             ;;
16
;;                                                              ;;
16
;;                                                              ;;
17
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
17
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 18... Line 18...
18
 
18
 
Line 19... Line 19...
19
$Revision: 1183 $
19
$Revision: 1288 $
20
 
20
 
21
 
21
 
Line 886... Line 886...
886
	mov	eax, [ebx + SOCKET.RCV_NXT]
886
	mov	eax, [ebx + SOCKET.RCV_NXT]
887
	cmp	eax, [edx + 20 + TCP_PACKET.SequenceNumber]
887
	cmp	eax, [edx + 20 + TCP_PACKET.SequenceNumber]
888
	jne	.exit
888
	jne	.exit
Line 889... Line 889...
889
 
889
 
890
	; Did we receive a FIN or RST?
890
	; Did we receive a FIN or RST?
891
	test	[edx + 20 + TCP_PACKET.Flags], TH_FIN
891
	test	[edx + 20 + TCP_PACKET.Flags], TH_FIN+TH_RST
Line 892... Line 892...
892
	jz	.check_ack
892
	jz	.check_ack
Line 893... Line 893...
893
 
893
 
Line 920... Line 920...
920
	popad
920
	popad
Line 921... Line 921...
921
 
921
 
Line 922... Line 922...
922
    @@: ; Send an ACK to that fin, and enter closewait state
922
    @@: ; Send an ACK to that fin, and enter closewait state
-
 
923
 
-
 
924
	mov	[ebx + SOCKET.TCBState], TCB_CLOSE_WAIT
-
 
925
	test	[edx + 20 + TCP_PACKET.Flags], TH_RST
-
 
926
	je      @f
923
 
927
	mov	[ebx + SOCKET.TCBState], TCB_CLOSED
924
	mov	[ebx + SOCKET.TCBState], TCB_CLOSE_WAIT
928
    @@:	
925
	call	signal_network_event
929
	call	signal_network_event
926
	lea	esi, [ebx + SOCKET.RCV_NXT]
930
	lea	esi, [ebx + SOCKET.RCV_NXT]
927
	mov	eax, [esi]		; save original
931
	mov	eax, [esi]		; save original