diff -ru sbin/disklabel.orig/disklabel.c sbin/disklabel/disklabel.c --- sbin/disklabel.orig/disklabel.c 2004-09-03 19:40:21.000000000 -0300 +++ sbin/disklabel/disklabel.c 2004-10-27 23:42:35.000000000 -0200 @@ -235,14 +235,14 @@ dkname = argv[0]; if (dkname[0] != '/') { - (void)sprintf(np, "%s%s%c", _PATH_DEV, dkname, 'a' + RAW_PART); + snprintf(np, BBSIZE, "%s%s%c", _PATH_DEV, dkname, 'a' + RAW_PART); specname = np; np += strlen(specname) + 1; } else specname = dkname; f = open(specname, op == READ ? O_RDONLY : O_RDWR); if (f < 0 && errno == ENOENT && dkname[0] != '/') { - (void)sprintf(specname, "%s%s", _PATH_DEV, dkname); + snprintf(specname, BBSIZE, "%s%s", _PATH_DEV, dkname); np = namebuf + strlen(specname) + 1; f = open(specname, op == READ ? O_RDONLY : O_RDWR); } @@ -370,19 +370,19 @@ */ if (!xxboot && lp->d_boot0) { if (*lp->d_boot0 != '/') - (void)sprintf(boot0, "%s/%s", + snprintf(boot0, sizeof(boot0), "%s/%s", _PATH_BOOTDIR, lp->d_boot0); else - (void)strcpy(boot0, lp->d_boot0); + strlcpy(boot0, lp->d_boot0, sizeof(boot0)); xxboot = boot0; } #if NUMBOOT > 1 if (!bootxx && lp->d_boot1) { if (*lp->d_boot1 != '/') - (void)sprintf(boot1, "%s/%s", + snprintf(boot1, sizeof(boot1), "%s/%s", _PATH_BOOTDIR, lp->d_boot1); else - (void)strcpy(boot1, lp->d_boot1); + strlcpy(boot1, lp->d_boot1, sizeof(boot1)); bootxx = boot1; } #endif @@ -390,7 +390,7 @@ /* d_packname is union d_boot[01], so zero */ bzero(lp->d_packname, sizeof(lp->d_packname)); if (name) - (void)strncpy(lp->d_packname, name, sizeof(lp->d_packname)); + strlcpy(lp->d_packname, name, sizeof(lp->d_packname)); } int @@ -607,12 +607,12 @@ *np++ = '\0'; if (!xxboot) { - (void)sprintf(boot0, "%s/boot1", _PATH_BOOTDIR); + snprintf(boot0, sizeof(boot0), "%s/boot1", _PATH_BOOTDIR); xxboot = boot0; } #if NUMBOOT > 1 if (!bootxx) { - (void)sprintf(boot1, "%s/boot2", _PATH_BOOTDIR); + snprintf(boot1, sizeof(boot1), "%s/boot2", _PATH_BOOTDIR); bootxx = boot1; } #endif @@ -1017,11 +1017,11 @@ if (tp == NULL) tp = ""; if (streq(cp, "disk")) { - strncpy(lp->d_typename, tp, sizeof (lp->d_typename)); + strlcpy(lp->d_typename, tp, sizeof (lp->d_typename)); continue; } if (streq(cp, "label")) { - strncpy(lp->d_packname, tp, sizeof (lp->d_packname)); + strlcpy(lp->d_packname, tp, sizeof (lp->d_packname)); continue; } if (streq(cp, "bytes/sector")) {