summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Shalayeff <mickey@cvs.openbsd.org>2001-05-08 17:02:14 +0000
committerMichael Shalayeff <mickey@cvs.openbsd.org>2001-05-08 17:02:14 +0000
commit4c53597cab495f2e4dc31027f7cd3b099bab9090 (patch)
treef9f641a6dab6365cff297db299980827b3735b4a
parent51cbfdec746e652d6c25ada3614ff80e61e8b734 (diff)
on `out of data' condition print a warning and exit w/
whatever current checksum we have gotten accumulated. this is somewhat conformant w/ what other archs are doing. from Camiel Dobbelaar <cd@sentia.nl>
-rw-r--r--sys/arch/i386/i386/in_cksum.s9
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/arch/i386/i386/in_cksum.s b/sys/arch/i386/i386/in_cksum.s
index 1fd2d9a747a..feb946e7669 100644
--- a/sys/arch/i386/i386/in_cksum.s
+++ b/sys/arch/i386/i386/in_cksum.s
@@ -176,9 +176,10 @@ in_cksum48: popl %edi # restore %edi
popl %ebp # restore %ebp
ret # return %eax
-in_cksum49: pushl $panic # push panic string
- call _panic # panic()
- leal 4(%esp), %esp #
+in_cksum49: pushl %edi # len - bytes checksummed
+ pushl $warning # push warning string
+ call _printf # printf()
+ leal 8(%esp), %esp #
jmp in_cksum48 #
.data
@@ -228,4 +229,4 @@ table3: .long in_cksum1 # next mbuf
.long in_cksum44 # checksum 2 bytes
.long in_cksum45 # checksum 3 bytes
-panic: .asciz "in_cksum: mp == NULL"
+warning: .asciz "in_cksum: out of data at %u\n"