Rev 3589 | Rev 3725 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3589 | Rev 3626 | ||
---|---|---|---|
Line 13... | Line 13... | ||
13 | ;; GNU GENERAL PUBLIC LICENSE ;; |
13 | ;; GNU GENERAL PUBLIC LICENSE ;; |
14 | ;; Version 2, June 1991 ;; |
14 | ;; Version 2, June 1991 ;; |
15 | ;; ;; |
15 | ;; ;; |
16 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
16 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 17... | Line 17... | ||
17 | 17 | ||
Line 18... | Line 18... | ||
18 | $Revision: 3589 $ |
18 | $Revision: 3626 $ |
Line 19... | Line 19... | ||
19 | 19 | ||
Line 125... | Line 125... | ||
125 | last_ack_sent dd ? |
125 | last_ack_sent dd ? |
Line 126... | Line 126... | ||
126 | 126 | ||
127 | 127 | ||
- | 128 | ;------- |
|
128 | ;------- |
129 | ; Timers |
129 | ; Timers |
130 | timer_flags dd ? |
130 | timer_retransmission dd ? ; rexmt |
131 | timer_retransmission dd ? ; rexmt |
131 | timer_persist dd ? |
132 | timer_persist dd ? |
Line 213... | Line 214... | ||
213 | mov ecx, 5 |
214 | mov ecx, 5 |
214 | rep stosd |
215 | rep stosd |
Line 215... | Line 216... | ||
215 | 216 | ||
216 | @@: |
217 | @@: |
217 | pseudo_random eax |
218 | pseudo_random eax |
218 | cmp ax, MIN_EPHEMERAL_PORT |
219 | cmp ax, EPHEMERAL_PORT_MIN |
219 | jb @r |
220 | jb @r |
220 | cmp ax, MAX_EPHEMERAL_PORT |
221 | cmp ax, EPHEMERAL_PORT_MAX |
221 | ja @r |
222 | ja @r |
222 | xchg al, ah |
223 | xchg al, ah |
Line 223... | Line 224... | ||
223 | mov [last_UDP_port], ax |
224 | mov [last_UDP_port], ax |
224 | 225 | ||
225 | @@: |
226 | @@: |
226 | pseudo_random eax |
227 | pseudo_random eax |
227 | cmp ax, MIN_EPHEMERAL_PORT |
228 | cmp ax, EPHEMERAL_PORT_MIN |
228 | jb @r |
229 | jb @r |
229 | cmp ax, MAX_EPHEMERAL_PORT |
230 | cmp ax, EPHEMERAL_PORT_MAX |
230 | ja @r |
231 | ja @r |
Line 231... | Line 232... | ||
231 | xchg al, ah |
232 | xchg al, ah |
Line 430... | Line 431... | ||
430 | jmp s_error |
431 | jmp s_error |
Line 431... | Line 432... | ||
431 | 432 | ||
432 | .tcp: |
433 | .tcp: |
Line 433... | Line 434... | ||
433 | .udp: |
434 | .udp: |
434 | 435 | ||
435 | mov ebx, [edx + 4] ; First, fill in the IP |
436 | cmp ebx, [edx + 4] ; First, fill in the IP |
436 | test ebx, ebx ; If IP is 0, use default |
- | |
437 | jnz @f |
437 | test ebx, ebx ; If IP is 0, use default |
438 | mov ebx, [NET_DEFAULT] |
438 | jnz @f |
439 | mov ebx, [IP_LIST + 4*ebx] |
439 | mov ebx, [IP_LIST + 4] ;;;;; FIXME !i!i!i |
Line 440... | Line 440... | ||
440 | @@: |
440 | @@: |
441 | mov [eax + IP_SOCKET.LocalIP], ebx |
441 | mov [eax + IP_SOCKET.LocalIP], ebx |
Line 481... | Line 481... | ||
481 | jmp s_error |
481 | jmp s_error |
Line 482... | Line 482... | ||
482 | 482 | ||
483 | .af_inet4: |
483 | .af_inet4: |
484 | cmp [eax + IP_SOCKET.LocalIP], 0 |
484 | cmp [eax + IP_SOCKET.LocalIP], 0 |
485 | jne @f |
485 | jne @f |
486 | push [IP_LIST] ; FIXME |
486 | push [IP_LIST + 4] ; FIXME !i!i!i! |
487 | pop [eax + IP_SOCKET.LocalIP] |
487 | pop [eax + IP_SOCKET.LocalIP] |
Line 488... | Line 488... | ||
488 | @@: |
488 | @@: |
489 | 489 | ||
Line 630... | Line 630... | ||
630 | cmp [eax + TCP_SOCKET.LocalPort], 0 |
630 | cmp [eax + TCP_SOCKET.LocalPort], 0 |
631 | je s_error |
631 | je s_error |
Line 632... | Line 632... | ||
632 | 632 | ||
633 | cmp [eax + IP_SOCKET.LocalIP], 0 |
633 | cmp [eax + IP_SOCKET.LocalIP], 0 |
634 | jne @f |
634 | jne @f |
635 | push [IP_LIST] |
635 | push [IP_LIST + 4] ;;; fixme!!!! |
636 | pop [eax + IP_SOCKET.LocalIP] |
636 | pop [eax + IP_SOCKET.LocalIP] |
Line 637... | Line 637... | ||
637 | @@: |
637 | @@: |
638 | 638 | ||
Line 1119... | Line 1119... | ||
1119 | .bind: |
1119 | .bind: |
1120 | cmp dword [edx+8], 0 |
1120 | cmp dword [edx+8], 0 |
1121 | je .unbind |
1121 | je .unbind |
Line 1122... | Line 1122... | ||
1122 | 1122 | ||
1123 | movzx edx, byte [edx + 9] |
1123 | movzx edx, byte [edx + 9] |
1124 | cmp edx, MAX_NET_DEVICES |
1124 | cmp edx, NET_DEVICES_MAX |
Line 1125... | Line 1125... | ||
1125 | ja s_error |
1125 | ja s_error |
1126 | 1126 | ||
1127 | mov edx, [NET_DRV_LIST + 4*edx] |
1127 | mov edx, [NET_DRV_LIST + 4*edx] |