From 1afe10aa6e58796af62f423cd49c53f338740be8 Mon Sep 17 00:00:00 2001 From: hidnplayr Date: Fri, 18 Sep 2009 14:15:37 +0000 Subject: [PATCH] Small fix in ICMP code git-svn-id: svn://kolibrios.org@1165 a494cfbc-eb01-0410-851d-a64ba20cac60 --- kernel/branches/net/network/IPv4.inc | 3 ++- kernel/branches/net/network/icmp.inc | 12 ++++++------ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/kernel/branches/net/network/IPv4.inc b/kernel/branches/net/network/IPv4.inc index 29ec49feb..b75b52200 100644 --- a/kernel/branches/net/network/IPv4.inc +++ b/kernel/branches/net/network/IPv4.inc @@ -401,7 +401,7 @@ IPv4_Handler: DEBUGF 1,"IP_Handler - unknown protocol:%u\n",al - jmp .dump + ret .destroy_slot_pop: @@ -572,6 +572,7 @@ IPv4_create_Packet: .exit: add esp, 16 .exit_: + DEBUGF 1,"Create IPv4 Packet - failed\n" or edi, -1 ret diff --git a/kernel/branches/net/network/icmp.inc b/kernel/branches/net/network/icmp.inc index 8e6e0fff6..09ca0b51e 100644 --- a/kernel/branches/net/network/icmp.inc +++ b/kernel/branches/net/network/icmp.inc @@ -277,7 +277,7 @@ ICMP_Handler: ;TODO: works only on pure ethernet right now ! DEBUGF 1,"ICMP_Handler - dumping\n" call kernel_free - add esp, 4 ; pop (balance stack) + add esp, 8 ; pop (balance stack) ret @@ -332,8 +332,7 @@ ICMP_Handler_fragments: ; works only on pure ethernet right now ! DEBUGF 1,"ICMP_Handler_fragments - end\n" call kernel_free - add esp, 4 ; pop (balance stack) - + add esp, 8 ; pop (balance stack) ret ;----------------------------------------------------------------- @@ -366,11 +365,11 @@ ICMP_create_Packet: call IPv4_create_Packet - DEBUGF 1,"full icmp packet size: %u\n", ebx - cmp edi, -1 je .exit + DEBUGF 1,"full icmp packet size: %u\n", ebx + pop eax mov word [edi + ICMP_Packet.Type], ax ; Write both type and code bytes at once pop eax @@ -401,7 +400,8 @@ ICMP_create_Packet: ret ; Send the packet (create_packet routine outputs pointer to routine to send packet in eax) .exit: - add esp, 8 + DEBUGF 1,"Creating ICMP Packet failed\n" + add esp, 3*4 ret