Subversion Repositories Kolibri OS

Rev

Rev 4347 | Rev 4387 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4347 Rev 4366
Line 565... Line 565...
565
  .not_uni_xfer:
565
  .not_uni_xfer:
Line 566... Line 566...
566
 
566
 
Line 567... Line 567...
567
        DEBUGF  DEBUG_NETWORK_VERBOSE, "TCP_input: Header prediction failed\n"
567
        DEBUGF  DEBUG_NETWORK_VERBOSE, "TCP_input: Header prediction failed\n"
568
 
-
 
569
; Calculate receive window size
568
 
570
 
569
; Calculate receive window size
571
        push    edx
570
        push    edx
-
 
571
        mov     eax, SOCKET_MAXDATA
572
        mov     eax, SOCKETBUFFSIZE
572
        sub     eax, [ebx + STREAM_SOCKET.rcv.size]
573
        sub     eax, [ebx + STREAM_SOCKET.rcv.size]
573
        DEBUGF  DEBUG_NETWORK_VERBOSE, "Space in receive buffer=%d\n", eax
-
 
574
        mov     edx, [ebx + TCP_SOCKET.RCV_ADV]
574
        mov     edx, [ebx + TCP_SOCKET.RCV_ADV]
575
        sub     edx, [ebx + TCP_SOCKET.RCV_NXT]
575
        sub     edx, [ebx + TCP_SOCKET.RCV_NXT]
576
        DEBUGF  DEBUG_NETWORK_VERBOSE, "Current advertised window=%d\n", edx
576
        cmp     eax, edx
577
        cmp     eax, edx
577
        jg      @f
578
        jg      @f
578
        mov     eax, edx
579
        mov     eax, edx
Line 1187... Line 1188...
1187
        push    ebx
1188
        push    ebx
1188
        lea     ecx, [ebx + SOCKET.mutex]
1189
        lea     ecx, [ebx + SOCKET.mutex]
1189
        call    mutex_unlock
1190
        call    mutex_unlock
1190
        pop     ebx
1191
        pop     ebx
Line 1191... Line -...
1191
 
-
 
1192
        push    ebx
1192
 
1193
        mov     eax, ebx
1193
        mov     eax, ebx
1194
        call    TCP_disconnect
-
 
1195
        pop     ebx
-
 
1196
 
1194
        call    TCP_close
Line 1197... Line 1195...
1197
        jmp     .destroy_new_socket
1195
        jmp     .drop_no_socket
1198
 
1196
 
1199
  .ack_tw:
1197
  .ack_tw:
1200
        mov     [ebx + TCP_SOCKET.timer_timed_wait], 2 * TCP_time_MSL
1198
        mov     [ebx + TCP_SOCKET.timer_timed_wait], 2 * TCP_time_MSL