Module Name: src Committed By: martin Date: Sat Oct 19 16:19:13 UTC 2013
Modified Files: src/sys/arch/mac68k/dev: adb_direct.c Log Message: Make sure we don't accidently pass an unsolicited packet as "ack only" (which would dereference unitialized pointers) To generate a diff of this commit: cvs rdiff -u -r1.64 -r1.65 src/sys/arch/mac68k/dev/adb_direct.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/mac68k/dev/adb_direct.c diff -u src/sys/arch/mac68k/dev/adb_direct.c:1.64 src/sys/arch/mac68k/dev/adb_direct.c:1.65 --- src/sys/arch/mac68k/dev/adb_direct.c:1.64 Fri Oct 18 18:38:49 2013 +++ src/sys/arch/mac68k/dev/adb_direct.c Sat Oct 19 16:19:13 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: adb_direct.c,v 1.64 2013/10/18 18:38:49 martin Exp $ */ +/* $NetBSD: adb_direct.c,v 1.65 2013/10/19 16:19:13 martin Exp $ */ /* From: adb_direct.c 2.02 4/18/97 jpw */ @@ -62,7 +62,7 @@ #ifdef __NetBSD__ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: adb_direct.c,v 1.64 2013/10/18 18:38:49 martin Exp $"); +__KERNEL_RCSID(0, "$NetBSD: adb_direct.c,v 1.65 2013/10/19 16:19:13 martin Exp $"); #include "opt_adb.h" @@ -1693,6 +1693,8 @@ adb_pass_up(struct adbCommand *in) * the caller sent us. */ if (in->unsol) { + if (in->ack_only) panic("invalid ack-only pkg"); + adbInbound[adbInTail].compRout = (void *)block.dbServiceRtPtr; adbInbound[adbInTail].compData = (void *)block.dbDataAreaAddr; adbInbound[adbInTail].saveBuf = (void *)adbInbound[adbInTail].data;