Subversion Repositories Kolibri OS

Rev

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

Rev 1838 Rev 2300
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: 1838 $
19
$Revision: 2300 $
20
 
20
 
21
MAX_FRAGMENTS	equ 64
21
MAX_FRAGMENTS	equ 64
Line 595... Line 595...
595
IPv4_output:
595
IPv4_output:
Line 596... Line 596...
596
 
596
 
Line 597... Line 597...
597
	DEBUGF	1,"IPv4_create_packet: size=%u\n", ecx
597
	DEBUGF	1,"IPv4_create_packet: size=%u\n", ecx
598
 
598
 
Line 599... Line 599...
599
	cmp	ecx, 65500		; Max IPv4 packet size
599
	cmp	ecx, 65500		; Max IPv4 packet size
Line 600... Line 600...
600
	jg	.too_large
600
	ja	.too_large
Line 671... Line 671...
671
IPv4_output_raw:
671
IPv4_output_raw:
Line 672... Line 672...
672
 
672
 
Line 673... Line 673...
673
	DEBUGF 1,"IPv4_output_raw: size=%u ptr=%x socket=%x\n", ecx, esi, eax
673
	DEBUGF 1,"IPv4_output_raw: size=%u ptr=%x socket=%x\n", ecx, esi, eax
674
 
674
 
Line 675... Line 675...
675
	cmp	ecx, 1480		;;;;;
675
	cmp	ecx, 1480		;;;;;
676
	jg	.too_large
676
	ja	.too_large
Line 677... Line 677...
677
 
677
 
Line 759... Line 759...
759
	DEBUGF 1,"IPv4_fragment\n"
759
	DEBUGF 1,"IPv4_fragment\n"
Line 760... Line 760...
760
 
760
 
Line 761... Line 761...
761
	and	ecx, not 111b	; align 4
761
	and	ecx, not 111b	; align 4
762
 
762
 
Line 763... Line 763...
763
	cmp	ecx, IPv4_Packet.DataOrOptional + 8	; must be able to put at least 8 bytes
763
	cmp	ecx, IPv4_Packet.DataOrOptional + 8	; must be able to put at least 8 bytes
764
	jl	.err2
764
	jb	.err2
765
 
765
 
766
	push	esi ecx
766
	push	esi ecx
Line 844... Line 844...
844
	add	ecx, [esp]		; offset
844
	add	ecx, [esp]		; offset
Line 845... Line 845...
845
 
845
 
Line 846... Line 846...
846
	DEBUGF 1,"Ipv4_fragment - bytes remaining: %u\n", ecx
846
	DEBUGF 1,"Ipv4_fragment - bytes remaining: %u\n", ecx
847
 
847
 
Line 848... Line 848...
848
	cmp	ecx, [esp+1*4]
848
	cmp	ecx, [esp+1*4]
849
	jge	.new_fragment
849
	jae	.new_fragment
Line 850... Line 850...
850
 
850