summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_ktrace.c
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2010-07-14 17:38:01 +0000
committerjhb <jhb@FreeBSD.org>2010-07-14 17:38:01 +0000
commitfb1e0aa66f080edbbf4244c7f1e74d7cca7faebb (patch)
tree7850d6ed46b2cb97834e0198437f760471417ca9 /sys/kern/kern_ktrace.c
parent6ab63421304fef2fcddb8156ca928388a8950d0f (diff)
downloadFreeBSD-src-fb1e0aa66f080edbbf4244c7f1e74d7cca7faebb.zip
FreeBSD-src-fb1e0aa66f080edbbf4244c7f1e74d7cca7faebb.tar.gz
- Document layout of KTR_STRUCT payload in a comment.
- Simplify ktrstruct() calling convention by having ktrstruct() use strlen() rather than requiring the caller to hand-code the length of constant strings. MFC after: 1 month
Diffstat (limited to 'sys/kern/kern_ktrace.c')
-rw-r--r--sys/kern/kern_ktrace.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/sys/kern/kern_ktrace.c b/sys/kern/kern_ktrace.c
index 2182ff7..e843da4 100644
--- a/sys/kern/kern_ktrace.c
+++ b/sys/kern/kern_ktrace.c
@@ -596,9 +596,8 @@ ktrcsw(out, user)
}
void
-ktrstruct(name, namelen, data, datalen)
+ktrstruct(name, data, datalen)
const char *name;
- size_t namelen;
void *data;
size_t datalen;
{
@@ -608,11 +607,10 @@ ktrstruct(name, namelen, data, datalen)
if (!data)
datalen = 0;
- buflen = namelen + 1 + datalen;
+ buflen = strlen(name) + 1 + datalen;
buf = malloc(buflen, M_KTRACE, M_WAITOK);
- bcopy(name, buf, namelen);
- buf[namelen] = '\0';
- bcopy(data, buf + namelen + 1, datalen);
+ strcpy(buf, name);
+ bcopy(data, buf + strlen(name) + 1, datalen);
if ((req = ktr_getrequest(KTR_STRUCT)) == NULL) {
free(buf, M_KTRACE);
return;
OpenPOWER on IntegriCloud