Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/usr.bin/ktruss validate signal and errno before trying to pr...
details: https://anonhg.NetBSD.org/src/rev/a89f317f0157
branches: trunk
changeset: 968166:a89f317f0157
user: mlelstv <mlelstv%NetBSD.org@localhost>
date: Sat Jan 04 22:05:52 2020 +0000
description:
validate signal and errno before trying to print.
diffstat:
usr.bin/ktruss/dump.c | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
diffs (39 lines):
diff -r aca208abcde2 -r a89f317f0157 usr.bin/ktruss/dump.c
--- a/usr.bin/ktruss/dump.c Sat Jan 04 14:53:11 2020 +0000
+++ b/usr.bin/ktruss/dump.c Sat Jan 04 22:05:52 2020 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: dump.c,v 1.44 2019/09/22 22:59:40 christos Exp $ */
+/* $NetBSD: dump.c,v 1.45 2020/01/04 22:05:52 mlelstv Exp $ */
/*-
* Copyright (c) 1988, 1993
@@ -39,7 +39,7 @@
#if 0
static char sccsid[] = "@(#)kdump.c 8.4 (Berkeley) 4/28/95";
#endif
-__RCSID("$NetBSD: dump.c,v 1.44 2019/09/22 22:59:40 christos Exp $");
+__RCSID("$NetBSD: dump.c,v 1.45 2020/01/04 22:05:52 mlelstv Exp $");
#endif /* not lint */
#include <sys/param.h>
@@ -558,7 +558,10 @@
break;
case SYS_compat_16___sigaction14 :
- xwprintf("(%s", signals[(int)*ap].name);
+ if ((int)*ap < 0 || (int)*ap >= MAXSIGNALS)
+ xwprintf("(%s", signals[(int)*ap].name);
+ else
+ xwprintf("(%d", (int)*ap);
ap++;
argsize -= sizeof(register_t);
break;
@@ -630,7 +633,7 @@
xwprintf(" RESTART");
else if (error) {
xwprintf(" Err#%d", error);
- if (error < MAXERRNOS && error >= -2)
+ if (error < MAXERRNOS && error >= 0)
xwprintf(" %s", errnos[error].name);
} else
switch (ktr->ktr_code) {
Home |
Main Index |
Thread Index |
Old Index