Fixed scaling option in TCP_output

git-svn-id: svn://kolibrios.org@2952 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
hidnplayr 2012-08-28 19:30:47 +00:00
parent dd4fcc8d94
commit 790b435709

View File

@ -340,23 +340,24 @@ TCP_send:
DEBUGF 1,"TCP_send: added maxseg option\n" DEBUGF 1,"TCP_send: added maxseg option\n"
test [eax + TCP_SOCKET.t_flags], TF_REQ_SCALE test [eax + TCP_SOCKET.t_flags], TF_REQ_SCALE
jz .no_syn jz .no_scale
test dl, TH_ACK test dl, TH_ACK
jnz .scale_opt jz .scale_opt
test [eax + TCP_SOCKET.t_flags], TF_RCVD_SCALE test [eax + TCP_SOCKET.t_flags], TF_RCVD_SCALE
jz .no_syn jz .no_scale
.scale_opt: .scale_opt:
movzx ecx, byte [eax + TCP_SOCKET.request_r_scale] mov cl, [eax + TCP_SOCKET.request_r_scale]
or ecx, TCP_OPT_WINDOW shl 24 + 4 shl 16 + TCP_OPT_NOP shl 8 mov ch, TCP_OPT_NOP
bswap ecx pushw cx
pushd ecx pushw TCP_OPT_WINDOW + 3 shl 8
add di, 4 add di, 4
DEBUGF 1,"TCP_send: added scale option\n" DEBUGF 1,"TCP_send: added scale option\n"
.no_scale:
.no_syn: .no_syn:
;------------------------------------ ;------------------------------------