TCP: Don't increase sequence number when resending a FIN.

git-svn-id: svn://kolibrios.org@6914 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
hidnplayr 2017-05-30 20:33:16 +00:00
parent c23792822f
commit 5b5249a5d6

View File

@ -312,8 +312,7 @@ endl
call mutex_unlock call mutex_unlock
popa popa
; Fixme: returnvalue? xor eax, eax
ret ret
@ -465,6 +464,23 @@ endl
.eos: .eos:
;---------------------------------------------------
; Dont increase sequence number when resending a FIN
test dl, TH_FIN
jz .no_fin_retransmit
test [eax + TCP_SOCKET.t_flags], TF_SENTFIN
jz .no_fin_retransmit
mov ebx, [eax + TCP_SOCKET.SND_NXT]
cmp ebx, [eax + TCP_SOCKET.SND_MAX]
jne .no_fin_retransmit
dec [eax + TCP_SOCKET.SND_NXT]
.no_fin_retransmit:
;---------------------------------------------------- ;----------------------------------------------------
; Calculate the receive window. ; Calculate the receive window.
; Dont shrink window, but avoid silly window syndrome ; Dont shrink window, but avoid silly window syndrome