Subversion Repositories Kolibri OS

Rev

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

Rev 2553 Rev 2555
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: 2553 $
19
$Revision: 2555 $
20
 
20
 
21
MAX_FRAGMENTS   equ 64
21
MAX_FRAGMENTS   equ 64
Line 619... Line 619...
619
        mov     edx, esp
619
        mov     edx, esp
620
        mov     ecx, [esp + 18]
620
        mov     ecx, [esp + 18]
621
        add     ecx, sizeof.IPv4_header
621
        add     ecx, sizeof.IPv4_header
622
        mov     di , ETHER_IPv4
622
        mov     di , ETHER_IPv4
623
        call    ETH_output
623
        call    ETH_output
624
        jz      .error
624
        jz      .eth_error
Line 625... Line 625...
625
 
625
 
Line 626... Line 626...
626
        add     esp, 6  ; pop the mac
626
        add     esp, 6  ; pop the mac
627
 
627
 
Line 642... Line 642...
642
        IPv4_checksum edi
642
        IPv4_checksum edi
643
        add     edi, sizeof.IPv4_header
643
        add     edi, sizeof.IPv4_header
644
        DEBUGF  1,"IPv4 Packet for device %x created successfully\n", ebx
644
        DEBUGF  1,"IPv4 Packet for device %x created successfully\n", ebx
645
        ret
645
        ret
Line 646... Line 646...
646
 
646
 
-
 
647
  .eth_error:
647
  .error:
648
        DEBUGF  1,"IPv4_output: ethernet error\n"
-
 
649
        add     esp, 6+2+4
-
 
650
        sub     edi, edi
-
 
651
        ret
648
        add     esp, 6
652
 
-
 
653
  .arp_error:
649
  .arp_error:
654
        DEBUGF  1,"IPv4_output: ARP error (0x%x)\n", eax
-
 
655
        add     esp, 4+4+4+2+2
-
 
656
        sub     edi, edi
-
 
657
        ret
650
        add     esp, 4+4+4+2+2
658
 
651
  .too_large:
659
  .too_large:
652
        DEBUGF  1,"IPv4_output: Failed\n"
660
        DEBUGF  1,"IPv4_output: error: Packet too large!\n"
653
        sub     edi, edi
661
        sub     edi, edi