Subversion Repositories Kolibri OS

Rev

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

Rev 2623 Rev 2629
Line 11... Line 11...
11
;;         GNU GENERAL PUBLIC LICENSE                              ;;
11
;;         GNU GENERAL PUBLIC LICENSE                              ;;
12
;;          Version 2, June 1991                                   ;;
12
;;          Version 2, June 1991                                   ;;
13
;;                                                                 ;;
13
;;                                                                 ;;
14
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
14
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 15... Line 15...
15
 
15
 
Line 16... Line 16...
16
$Revision: 2623 $
16
$Revision: 2629 $
Line 17... Line 17...
17
 
17
 
Line 1321... Line 1321...
1321
        push    eax ecx esi
1321
        push    eax ecx esi
Line 1322... Line 1322...
1322
 
1322
 
Line 1323... Line 1323...
1323
; socket exists, now try to flag an event to the application
1323
; socket exists, now try to flag an event to the application
-
 
1324
 
-
 
1325
        mov     eax, [eax + SOCKET.PID]
1324
 
1326
        test    eax, eax
1325
        mov     eax, [eax + SOCKET.PID]
1327
        jz      .error2
Line 1326... Line 1328...
1326
        mov     ecx, 1
1328
        mov     ecx, 1
1327
        mov     esi, TASK_DATA + TASKDATA.pid
1329
        mov     esi, TASK_DATA + TASKDATA.pid
Line 1717... Line 1719...
1717
 
1719
 
Line 1718... Line 1720...
1718
        DEBUGF  1,"closing socket %x", eax, ebx
1720
        DEBUGF  1,"closing socket %x", eax, ebx
Line 1719... Line -...
1719
 
-
 
1720
        mov     [ebx + SOCKET.PID], 0
-
 
1721
 
-
 
1722
        cmp     [ebx + SOCKET.Protocol], IP_PROTO_UDP
1721
 
1723
        je      .udp
1722
        mov     [ebx + SOCKET.PID], 0
Line 1724... Line 1723...
1724
 
1723
 
Line 1725... Line -...
1725
        cmp     [ebx + SOCKET.Protocol], IP_PROTO_TCP
-
 
1726
        je      .tcp
1724
        cmp     [ebx + SOCKET.Protocol], IP_PROTO_TCP
1727
 
1725
        je      .tcp
1728
        jmp     .next_socket    ; kill all sockets for given PID
1726
 
1729
 
1727
; The socket is stateless, just kill it right away!
Line 1730... Line 1728...
1730
  .udp:
1728
 
Line -... Line 1729...
-
 
1729
        mov     eax, ebx
-
 
1730
        mov     ebx, [ebx + SOCKET.NextPtr]
-
 
1731
        call    SOCKET_free
1731
        mov     eax, ebx
1732
        jmp     .test_socket
1732
        mov     ebx, [ebx + SOCKET.NextPtr]
-
 
1733
        call    SOCKET_free
1733
 
Line 1734... Line 1734...
1734
        jmp     .test_socket
1734
  .tcp:
1735
 
1735
 
Line 1736... Line 1736...
1736
  .tcp:
1736
        push    [ebx + SOCKET.NextPtr]