Rev 7678 | Rev 9729 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 7678 | Rev 7679 | ||
---|---|---|---|
Line 14... | Line 14... | ||
14 | ;; GNU GENERAL PUBLIC LICENSE ;; |
14 | ;; GNU GENERAL PUBLIC LICENSE ;; |
15 | ;; Version 2, June 1991 ;; |
15 | ;; Version 2, June 1991 ;; |
16 | ;; ;; |
16 | ;; ;; |
17 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
17 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 18... | Line 18... | ||
18 | 18 | ||
Line 19... | Line 19... | ||
19 | $Revision: 7678 $ |
19 | $Revision: 7679 $ |
20 | 20 | ||
Line 21... | Line 21... | ||
21 | IPv4_MAX_FRAGMENTS = 64 |
21 | IPv4_MAX_FRAGMENTS = 64 |
Line 646... | Line 646... | ||
646 | push ax |
646 | push ax |
Line 647... | Line 647... | ||
647 | 647 | ||
Line 648... | Line 648... | ||
648 | inc [IPv4_packets_tx + edi] ; update stats |
648 | inc [IPv4_packets_tx + edi] ; update stats |
649 | 649 | ||
650 | mov ax, ETHER_PROTO_IPv4 |
650 | mov ax, ETHER_PROTO_IPv4 |
651 | mov ebx, [net_drv_list + edi] |
651 | mov ebx, [net_device_list + edi] |
652 | mov ecx, [esp + 6 + 8 + 2] |
652 | mov ecx, [esp + 6 + 8 + 2] |
653 | add ecx, sizeof.IPv4_header |
653 | add ecx, sizeof.IPv4_header |
654 | mov edx, esp |
654 | mov edx, esp |
Line 745... | Line 745... | ||
745 | push ebx ; push the mac |
745 | push ebx ; push the mac |
746 | push ax |
746 | push ax |
Line 747... | Line 747... | ||
747 | 747 | ||
748 | inc [IPv4_packets_tx + 4*edi] |
748 | inc [IPv4_packets_tx + 4*edi] |
749 | mov ax, ETHER_PROTO_IPv4 |
749 | mov ax, ETHER_PROTO_IPv4 |
750 | mov ebx, [net_drv_list + 4*edi] |
750 | mov ebx, [net_device_list + 4*edi] |
751 | mov ecx, [esp + 6 + 4] |
751 | mov ecx, [esp + 6 + 4] |
752 | add ecx, sizeof.IPv4_header |
752 | add ecx, sizeof.IPv4_header |
753 | mov edx, esp |
753 | mov edx, esp |
754 | call eth_output |
754 | call eth_output |
Line 1112... | Line 1112... | ||
1112 | mov ebx, [IPv4_subnet + eax] |
1112 | mov ebx, [IPv4_subnet + eax] |
1113 | not ebx |
1113 | not ebx |
1114 | or ebx, ecx |
1114 | or ebx, ecx |
1115 | mov [IPv4_broadcast + eax], ebx |
1115 | mov [IPv4_broadcast + eax], ebx |
Line 1116... | Line 1116... | ||
1116 | 1116 | ||
1117 | mov ebx, [net_drv_list + eax] |
1117 | mov ebx, [net_device_list + eax] |
1118 | mov eax, [IPv4_address + eax] |
1118 | mov eax, [IPv4_address + eax] |
Line 1119... | Line 1119... | ||
1119 | call arp_output_request ; now send a gratuitous ARP |
1119 | call arp_output_request ; now send a gratuitous ARP |
1120 | 1120 |