Rev 3610 | Rev 3643 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3610 | Rev 3638 | ||
---|---|---|---|
Line 584... | Line 584... | ||
584 | test eax, 0xffff0000 ; error bits |
584 | test eax, 0xffff0000 ; error bits |
585 | jnz .arp_error |
585 | jnz .arp_error |
586 | push ebx ; push the mac onto the stack |
586 | push ebx ; push the mac onto the stack |
587 | push ax |
587 | push ax |
Line 588... | Line 588... | ||
588 | 588 | ||
Line 589... | Line 589... | ||
589 | inc [IP_packets_tx + 4*edi] ; update stats |
589 | inc [IP_packets_tx + edi] ; update stats |
590 | 590 | ||
591 | mov ebx, [NET_DRV_LIST + 4*edi] |
591 | mov ebx, [NET_DRV_LIST + edi] |
592 | lea eax, [ebx + ETH_DEVICE.mac] |
592 | lea eax, [ebx + ETH_DEVICE.mac] |
593 | mov edx, esp |
593 | mov edx, esp |
594 | mov ecx, [esp + 10 + 6] |
594 | mov ecx, [esp + 10 + 6] |
Line 855... | Line 855... | ||
855 | ;--------------------------------------------------------------------------- |
855 | ;--------------------------------------------------------------------------- |
856 | ; |
856 | ; |
857 | ; IPv4_route |
857 | ; IPv4_route |
858 | ; |
858 | ; |
859 | ; IN: eax = Destination IP |
859 | ; IN: eax = Destination IP |
860 | ; OUT: edi = device number |
860 | ; OUT: edi = device number*4 |
861 | ; eax = ip of gateway if nescessary, unchanged otherwise |
861 | ; eax = ip of gateway if nescessary, unchanged otherwise |
862 | ; |
862 | ; |
863 | ;--------------------------------------------------------------------------- |
863 | ;--------------------------------------------------------------------------- |
864 | align 4 |
864 | align 4 |
865 | IPv4_route: |
865 | IPv4_route: |
Line 888... | Line 888... | ||
888 | jnz .loop |
888 | jnz .loop |
Line 889... | Line 889... | ||
889 | 889 | ||
890 | .invalid: |
890 | .invalid: |
891 | mov eax, [GATEWAY_LIST+4] ;;; FIXME |
891 | mov eax, [GATEWAY_LIST+4] ;;; FIXME |
892 | .broadcast: |
892 | .broadcast: |
893 | xor edi, edi ; if none found, use device 1 as default ;;;; FIXME |
- | |
894 | inc di |
893 | mov edi, 4 ; if none found, use device 1 as default ;;;; FIXME |
Line 895... | Line 894... | ||
895 | ret |
894 | ret |