1,8 → 1,10 |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
;; ;; |
;; Copyright (C) KolibriOS team 2004-2011. All rights reserved. ;; |
;; Copyright (C) KolibriOS team 2004-2010. All rights reserved. ;; |
;; Distributed under terms of the GNU General Public License ;; |
;; ;; |
;; SOCKET.INC ;; |
;; ;; |
;; Written by hidnplayr@kolibrios.org, ;; |
;; and Clevermouse. ;; |
;; ;; |
43,9 → 45,13 |
virtual at SOCKET.end |
|
IP_SOCKET: |
.LocalIP rd 4 |
.RemoteIP rd 4 |
|
.LocalIP dd ? |
rd 3 ; for IPv6 addresses |
|
.RemoteIP dd ? |
rd 3 ; for IPv6 addresses |
|
.end: |
end virtual |
|
782,9 → 788,6 |
call SOCKET_num_to_ptr |
jz s_error |
|
mov ecx, esi |
mov esi, edx |
|
jmp [eax + SOCKET.snd_proc] |
|
|
793,6 → 796,9 |
|
DEBUGF 1,"SOCKET_send: UDP\n" |
|
mov ecx, esi |
mov esi, edx |
|
call UDP_output |
|
mov dword [esp+32], 0 |
805,6 → 811,8 |
DEBUGF 1,"SOCKET_send: TCP\n" |
|
push eax |
mov ecx, esi |
mov esi, edx |
add eax, STREAM_SOCKET.snd |
call SOCKET_ring_write |
pop eax |
820,9 → 828,12 |
|
DEBUGF 1,"type: IP\n" |
|
mov ecx, esi |
mov esi, edx |
|
call IPv4_output_raw |
|
mov [esp+32], eax |
mov dword [esp+32], eax |
ret |
|
align 4 |
830,6 → 841,7 |
|
DEBUGF 1,"SOCKET_send: ICMP\n" |
|
mov ecx, esi |
call ICMP_output_raw |
|
mov dword [esp+32], 0 |