summaryrefslogtreecommitdiffstats
path: root/usr.bin/systat/vmstat.c
diff options
context:
space:
mode:
authorderaadt <deraadt@openbsd.org>2003-04-08 00:53:09 +0000
committerderaadt <deraadt@openbsd.org>2003-04-08 00:53:09 +0000
commitd498ba01d5bd05d5d702b109730477b846600a99 (patch)
treeed46d948ecbc73a299bea4a268a188fde83b13c0 /usr.bin/systat/vmstat.c
parentstrcpy trashing, help from tedu; ok tedu (diff)
downloadwireguard-openbsd-d498ba01d5bd05d5d702b109730477b846600a99.tar.xz
wireguard-openbsd-d498ba01d5bd05d5d702b109730477b846600a99.zip
string cleaning; ok tdeval
Diffstat (limited to 'usr.bin/systat/vmstat.c')
-rw-r--r--usr.bin/systat/vmstat.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/usr.bin/systat/vmstat.c b/usr.bin/systat/vmstat.c
index 08c1b219870..23d4c8746c8 100644
--- a/usr.bin/systat/vmstat.c
+++ b/usr.bin/systat/vmstat.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: vmstat.c,v 1.38 2003/02/28 21:29:07 jason Exp $ */
+/* $OpenBSD: vmstat.c,v 1.39 2003/04/08 00:53:09 deraadt Exp $ */
/* $NetBSD: vmstat.c,v 1.5 1996/05/10 23:16:40 thorpej Exp $ */
/*-
@@ -38,7 +38,7 @@
#if 0
static char sccsid[] = "@(#)vmstat.c 8.2 (Berkeley) 1/12/94";
#endif
-static char rcsid[] = "$OpenBSD: vmstat.c,v 1.38 2003/02/28 21:29:07 jason Exp $";
+static char rcsid[] = "$OpenBSD: vmstat.c,v 1.39 2003/04/08 00:53:09 deraadt Exp $";
#endif /* not lint */
/*
@@ -213,21 +213,22 @@ initkre(void)
nintr++;
KREAD(ihp, &ih, sizeof(ih));
KREAD(ih.ih_what, iname, 16);
- namelen += 1 + strlen(iname);
+ namelen += strlen(iname) + 1;
ihp = ih.ih_next;
}
}
intrloc = calloc(nintr, sizeof (long));
intrname = calloc(nintr, sizeof (char *));
cp = intrnamebuf = malloc(namelen);
- for (namelen = 0, i = 0, n = 0; i < 16; i++) {
+ for (i = 0, n = 0; i < 16; i++) {
ihp = intrhand[i];
while (ihp) {
KREAD(ihp, &ih, sizeof(ih));
KREAD(ih.ih_what, iname, 16);
/* XXX strcpy is safe, sized & malloc'd buffer */
- strcpy(intrname[n++] = intrnamebuf + namelen, iname);
- namelen += 1 + strlen(iname);
+ intrname[n++] = cp;
+ strlcpy(cp, iname, intrnamebuf + namelen - cp);
+ cp += strlen(iname) + 1;
ihp = ih.ih_next;
}
}