summaryrefslogtreecommitdiffstats
path: root/usr.sbin/kldxref/kldxref.c
diff options
context:
space:
mode:
authorimp <imp@FreeBSD.org>2006-08-05 18:22:11 +0000
committerimp <imp@FreeBSD.org>2006-08-05 18:22:11 +0000
commit9ae554a06e6ed5031a6e222c495be4c6f24ea9ab (patch)
treee1e8c6f841b34bb12ada680ba895d8aa2034445d /usr.sbin/kldxref/kldxref.c
parenteb0a6f2b06792a7b044c3bfeae205db2a7d6b7d7 (diff)
downloadFreeBSD-src-9ae554a06e6ed5031a6e222c495be4c6f24ea9ab.zip
FreeBSD-src-9ae554a06e6ed5031a6e222c495be4c6f24ea9ab.tar.gz
Use safe strlcpy rather than unsafe strncpy. After marcel's last fix,
there was still one overflow possible. strlcpy is faster anyway because it doesn't unexpectedly zero the entire length of the string when copying short strings....
Diffstat (limited to 'usr.sbin/kldxref/kldxref.c')
-rw-r--r--usr.sbin/kldxref/kldxref.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/usr.sbin/kldxref/kldxref.c b/usr.sbin/kldxref/kldxref.c
index 40e364b..a7c0654 100644
--- a/usr.sbin/kldxref/kldxref.c
+++ b/usr.sbin/kldxref/kldxref.c
@@ -226,8 +226,7 @@ read_kld(char *filename, char *kldname)
cp = strrchr(kldname, '.');
nmlen = cp ? min(MAXMODNAME, cp - kldname) :
min(MAXMODNAME, strlen(kldname));
- strncpy(kldmodname, kldname, nmlen);
- kldmodname[nmlen] = '\0';
+ strlcpy(kldmodname, kldname, nmlen);
/* fprintf(fxref, "%s:%s:%d\n", kldmodname, kldname, 0);*/
}
do {
@@ -259,8 +258,7 @@ maketempfile(char *dest, const char *root)
char *p;
int fd;
- strncpy(dest, root, MAXPATHLEN - 1);
- dest[MAXPATHLEN-1] = '\0';
+ strlcpy(dest, root, MAXPATHLEN);
if ((p = strrchr(dest, '/')) != 0)
p++;
OpenPOWER on IntegriCloud