Module Name: src Committed By: christos Date: Thu Mar 27 15:50:48 UTC 2014
Modified Files: src/external/cddl/osnet/dist/cmd/dtrace: dtrace.c src/external/cddl/osnet/dist/cmd/zdb: zdb.c src/external/cddl/osnet/dist/cmd/ztest: ztest.c src/external/cddl/osnet/dist/lib/libdtrace/arm: dt_isadep.c src/external/cddl/osnet/dist/lib/libdtrace/common: dt_handle.c dt_link.c dt_subr.c src/external/cddl/osnet/dist/lib/libzpool/common: util.c src/external/cddl/osnet/dist/tools/ctf/cvt: merge.c src/external/cddl/osnet/dist/uts/common/dtrace: dtrace.c fasttrap.c src/external/cddl/osnet/dist/uts/common/fs/zfs: ddt.c spa.c zfs_vfsops.c zfs_znode.c zio.c zvol.c src/external/cddl/osnet/dist/uts/common/fs/zfs/sys: ddt.h src/external/cddl/osnet/dist/uts/common/sys: cmn_err.h Log Message: kill sprintf To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/external/cddl/osnet/dist/cmd/dtrace/dtrace.c cvs rdiff -u -r1.1.1.2 -r1.2 src/external/cddl/osnet/dist/cmd/zdb/zdb.c cvs rdiff -u -r1.4 -r1.5 src/external/cddl/osnet/dist/cmd/ztest/ztest.c cvs rdiff -u -r1.1 -r1.2 \ src/external/cddl/osnet/dist/lib/libdtrace/arm/dt_isadep.c cvs rdiff -u -r1.3 -r1.4 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_handle.c cvs rdiff -u -r1.4 -r1.5 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c cvs rdiff -u -r1.7 -r1.8 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c cvs rdiff -u -r1.1.1.1 -r1.2 \ src/external/cddl/osnet/dist/lib/libzpool/common/util.c cvs rdiff -u -r1.3 -r1.4 src/external/cddl/osnet/dist/tools/ctf/cvt/merge.c cvs rdiff -u -r1.26 -r1.27 \ src/external/cddl/osnet/dist/uts/common/dtrace/dtrace.c cvs rdiff -u -r1.3 -r1.4 \ src/external/cddl/osnet/dist/uts/common/dtrace/fasttrap.c cvs rdiff -u -r1.1.1.1 -r1.2 \ src/external/cddl/osnet/dist/uts/common/fs/zfs/ddt.c cvs rdiff -u -r1.5 -r1.6 src/external/cddl/osnet/dist/uts/common/fs/zfs/spa.c cvs rdiff -u -r1.9 -r1.10 \ src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c cvs rdiff -u -r1.15 -r1.16 \ src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_znode.c cvs rdiff -u -r1.3 -r1.4 src/external/cddl/osnet/dist/uts/common/fs/zfs/zio.c cvs rdiff -u -r1.4 -r1.5 \ src/external/cddl/osnet/dist/uts/common/fs/zfs/zvol.c cvs rdiff -u -r1.1.1.1 -r1.2 \ src/external/cddl/osnet/dist/uts/common/fs/zfs/sys/ddt.h cvs rdiff -u -r1.1.1.1 -r1.2 \ src/external/cddl/osnet/dist/uts/common/sys/cmn_err.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/external/cddl/osnet/dist/cmd/dtrace/dtrace.c diff -u src/external/cddl/osnet/dist/cmd/dtrace/dtrace.c:1.2 src/external/cddl/osnet/dist/cmd/dtrace/dtrace.c:1.3 --- src/external/cddl/osnet/dist/cmd/dtrace/dtrace.c:1.2 Sat Feb 20 19:49:54 2010 +++ src/external/cddl/osnet/dist/cmd/dtrace/dtrace.c Thu Mar 27 11:50:48 2014 @@ -953,7 +953,7 @@ bufhandler(const dtrace_bufdata_t *bufda uint8_t *data; int lim = rec->dtrd_size; - (void) sprintf(buf, "%d (data: ", rec->dtrd_offset); + (void) snprintf(buf, end, "%d (data: ", rec->dtrd_offset); c = buf + strlen(buf); if (lim > sizeof (uint64_t)) Index: src/external/cddl/osnet/dist/cmd/zdb/zdb.c diff -u src/external/cddl/osnet/dist/cmd/zdb/zdb.c:1.1.1.2 src/external/cddl/osnet/dist/cmd/zdb/zdb.c:1.2 --- src/external/cddl/osnet/dist/cmd/zdb/zdb.c:1.1.1.2 Sat Feb 27 17:29:30 2010 +++ src/external/cddl/osnet/dist/cmd/zdb/zdb.c Thu Mar 27 11:50:48 2014 @@ -572,7 +572,7 @@ dump_dde(const ddt_t *ddt, const ddt_ent if (ddp->ddp_phys_birth == 0) continue; ddt_bp_create(ddt->ddt_checksum, ddk, ddp, &blk); - sprintf_blkptr(blkbuf, &blk); + snprintf_blkptr(blkbuf, sizeof(blkbuf), &blk); (void) printf("index %llx refcnt %llu %s %s\n", (u_longlong_t)index, (u_longlong_t)ddp->ddp_refcnt, types[p], blkbuf); @@ -822,25 +822,30 @@ blkid2offset(const dnode_phys_t *dnp, co } static void -sprintf_blkptr_compact(char *blkbuf, blkptr_t *bp) +snprintf_blkptr_compact(char *blkbuf, size_t blklen, blkptr_t *bp) { dva_t *dva = bp->blk_dva; int ndvas = dump_opt['d'] > 5 ? BP_GET_NDVAS(bp) : 1; + size_t len; if (dump_opt['b'] >= 5) { - sprintf_blkptr(blkbuf, bp); + snprintf_blkptr(blkbuf, blklen, bp); return; } blkbuf[0] = '\0'; - for (int i = 0; i < ndvas; i++) - (void) sprintf(blkbuf + strlen(blkbuf), "%llu:%llx:%llx ", + len = 0; + for (int i = 0; i < ndvas; i++) { + len += snprintf(blkbuf + len, blklen - len, "%llu:%llx:%llx ", (u_longlong_t)DVA_GET_VDEV(&dva[i]), (u_longlong_t)DVA_GET_OFFSET(&dva[i]), (u_longlong_t)DVA_GET_ASIZE(&dva[i])); + if (len > blklen) + len = blklen; + } - (void) sprintf(blkbuf + strlen(blkbuf), + snprintf(blkbuf + len, blklen - len, "%llxL/%llxP F=%llu B=%llu/%llu", (u_longlong_t)BP_GET_LSIZE(bp), (u_longlong_t)BP_GET_PSIZE(bp), @@ -871,7 +876,7 @@ print_indirect(blkptr_t *bp, const zbook } } - sprintf_blkptr_compact(blkbuf, bp); + snprintf_blkptr_compact(blkbuf, sizeof(blkbuf), bp); (void) printf("%s\n", blkbuf); } @@ -1010,7 +1015,7 @@ dump_dsl_dataset(objset_t *os, uint64_t nicenum(ds->ds_compressed_bytes, compressed); nicenum(ds->ds_uncompressed_bytes, uncompressed); nicenum(ds->ds_unique_bytes, unique); - sprintf_blkptr(blkbuf, &ds->ds_bp); + snprintf_blkptr(blkbuf, sizeof(blkbuf), &ds->ds_bp); (void) printf("\t\tdir_obj = %llu\n", (u_longlong_t)ds->ds_dir_obj); @@ -1093,7 +1098,7 @@ dump_bplist(objset_t *mos, uint64_t obje char blkbuf[BP_SPRINTF_LEN]; ASSERT(bp->blk_birth != 0); - sprintf_blkptr_compact(blkbuf, bp); + snprintf_blkptr_compact(blkbuf, sizeof(blkbuf), bp); (void) printf("\tItem %3llu: %s\n", (u_longlong_t)itor - 1, blkbuf); } @@ -1300,7 +1305,7 @@ dump_object(objset_t *os, uint64_t objec nicenum(doi.doi_max_offset, lsize); nicenum(doi.doi_physical_blocks_512 << 9, asize); nicenum(doi.doi_bonus_size, bonus_size); - (void) sprintf(fill, "%6.2f", 100.0 * doi.doi_fill_count * + (void) snprintf(fill, "%6.2f", 100.0 * doi.doi_fill_count * doi.doi_data_block_size / (object == 0 ? DNODES_PER_BLOCK : 1) / doi.doi_max_offset); @@ -1397,6 +1402,7 @@ dump_dir(objset_t *os) int verbosity = dump_opt['d']; int print_header = 1; int i, error; + size_t len; dmu_objset_fast_stat(os, &dds); @@ -1417,8 +1423,10 @@ dump_dir(objset_t *os) nicenum(refdbytes, numbuf); if (verbosity >= 4) { - (void) sprintf(blkbuf, ", rootbp "); - (void) sprintf_blkptr(blkbuf + strlen(blkbuf), os->os_rootbp); + len = snprintf(blkbuf, blklen, ", rootbp "); + if (len > blklen) + len = blklen; + printf_blkptr(blkbuf + len, blklen - len, os->os_rootbp); } else { blkbuf[0] = '\0'; } @@ -1490,7 +1498,7 @@ dump_uberblock(uberblock_t *ub, const ch (u_longlong_t)ub->ub_timestamp, asctime(localtime(×tamp))); if (dump_opt['u'] >= 3) { char blkbuf[BP_SPRINTF_LEN]; - sprintf_blkptr(blkbuf, &ub->ub_rootbp); + snprintf_blkptr(blkbuf, sizeof(blkbuf), &ub->ub_rootbp); (void) printf("\trootbp = %s\n", blkbuf); } (void) printf(footer ? footer : ""); @@ -1785,7 +1793,7 @@ zdb_blkptr_cb(spa_t *spa, zilog_t *zilog zcb->zcb_errors[ioerr]++; if (dump_opt['b'] >= 2) - sprintf_blkptr(blkbuf, bp); + snprintf_blkptr(blkbuf, sizeof(blkbuf), bp); else blkbuf[0] = '\0'; @@ -1804,7 +1812,7 @@ zdb_blkptr_cb(spa_t *spa, zilog_t *zilog zcb->zcb_readfails = 0; if (dump_opt['b'] >= 4) { - sprintf_blkptr(blkbuf, bp); + snprintf_blkptr(blkbuf, sizeof(blkbuf), bp); (void) printf("objset %llu object %llu " "level %lld offset 0x%llx %s\n", (u_longlong_t)zb->zb_objset, @@ -1978,7 +1986,7 @@ dump_block_stats(spa_t *spa) while (bplist_iterate(bpl, &itor, &blk) == 0) { if (dump_opt['b'] >= 4) { char blkbuf[BP_SPRINTF_LEN]; - sprintf_blkptr(blkbuf, &blk); + snprintf_blkptr(blkbuf, sizeof(blkbuf), &blk); (void) printf("[%s] %s\n", "deferred free", blkbuf); } @@ -2303,7 +2311,7 @@ zdb_print_blkptr(blkptr_t *bp, int flags if (flags & ZDB_FLAG_BSWAP) byteswap_uint64_array((void *)bp, sizeof (blkptr_t)); - sprintf_blkptr(blkbuf, bp); + snprintf_blkptr(blkbuf, sizeof(blkbuf), bp); (void) printf("%s\n", blkbuf); } Index: src/external/cddl/osnet/dist/cmd/ztest/ztest.c diff -u src/external/cddl/osnet/dist/cmd/ztest/ztest.c:1.4 src/external/cddl/osnet/dist/cmd/ztest/ztest.c:1.5 --- src/external/cddl/osnet/dist/cmd/ztest/ztest.c:1.4 Sat Feb 27 18:43:52 2010 +++ src/external/cddl/osnet/dist/cmd/ztest/ztest.c Thu Mar 27 11:50:48 2014 @@ -378,17 +378,21 @@ fatal(int do_perror, char *message, ...) va_list args; int save_errno = errno; char buf[FATAL_MSG_SZ]; + size_t len, blklen = sizeof(buf); (void) fflush(stdout); va_start(args, message); - (void) sprintf(buf, "ztest: "); + len = snprintf(buf, blklen, "ztest: "); + if (len > blklen) + len = blklen; /* LINTED */ - (void) vsprintf(buf + strlen(buf), message, args); + len += vsnprintf(buf + len, blklen - len, message, args); va_end(args); + if (len > blklen) + len = blklen; if (do_perror) { - (void) snprintf(buf + strlen(buf), FATAL_MSG_SZ - strlen(buf), - ": %s", strerror(save_errno)); + snprintf(buf + len, blklen - len, ": %s", strerror(save_errno)); } (void) fprintf(stderr, "%s\n", buf); fatal_msg = buf; /* to ease debugging */ @@ -650,11 +654,11 @@ make_vdev_file(char *path, char *aux, si if (aux != NULL) { vdev = ztest_shared->zs_vdev_aux; - (void) sprintf(path, ztest_aux_template, + (void) snprintf(path, sizeof(pathbuf), ztest_aux_template, zopt_dir, zopt_pool, aux, vdev); } else { vdev = ztest_shared->zs_vdev_next_leaf++; - (void) sprintf(path, ztest_dev_template, + (void) snprintf(path, sizeof(pathbuf), ztest_dev_template, zopt_dir, zopt_pool, vdev); } } @@ -2235,7 +2239,7 @@ ztest_vdev_aux_add_remove(ztest_ds_t *zd for (;;) { char path[MAXPATHLEN]; int c; - (void) sprintf(path, ztest_aux_template, zopt_dir, + (void) snprintf(path, sizeof(pathbuf), ztest_aux_template, zopt_dir, zopt_pool, aux, zs->zs_vdev_aux); for (c = 0; c < sav->sav_count; c++) if (strcmp(sav->sav_vdevs[c]->vdev_path, @@ -3760,8 +3764,8 @@ ztest_zap(ztest_ds_t *zd, uint64_t id) ints = MAX(ZTEST_ZAP_MIN_INTS, object % ZTEST_ZAP_MAX_INTS); prop = ztest_random(ZTEST_ZAP_MAX_PROPS); - (void) sprintf(propname, "prop_%llu", (u_longlong_t)prop); - (void) sprintf(txgname, "txg_%llu", (u_longlong_t)prop); + (void) snprintf(propname, sizeof(propname), "prop_%llu", (u_longlong_t)prop); + (void) snprintf(txgname, sizeof(txgname), "txg_%llu", (u_longlong_t)prop); bzero(value, sizeof (value)); last_txg = 0; @@ -3822,8 +3826,8 @@ ztest_zap(ztest_ds_t *zd, uint64_t id) * Remove a random pair of entries. */ prop = ztest_random(ZTEST_ZAP_MAX_PROPS); - (void) sprintf(propname, "prop_%llu", (u_longlong_t)prop); - (void) sprintf(txgname, "txg_%llu", (u_longlong_t)prop); + (void) snprintf(propname, sizeof(propname), "prop_%llu", (u_longlong_t)prop); + (void) snprintf(txgname, sizeof(txgname), "txg_%llu", (u_longlong_t)prop); error = zap_length(os, object, txgname, &zl_intsize, &zl_ints); @@ -4719,7 +4723,7 @@ ztest_run_zdb(char *pool) isalen = ztest - isa; isa = strdup(isa); /* LINTED */ - (void) sprintf(bin, + (void) snprintf(bin, sizeof(zdb) - (bin - zdb), "/usr/sbin%.*s/zdb -bcc%s%s -U /tmp/zpool.cache %s", isalen, isa, @@ -5292,7 +5296,7 @@ ztest_freeze(ztest_shared_t *zs) } void -print_time(hrtime_t t, char *timebuf) +print_time(hrtime_t t, char *timebuf, size_t timelen) { hrtime_t s = t / NANOSEC; hrtime_t m = s / 60; @@ -5306,14 +5310,14 @@ print_time(hrtime_t t, char *timebuf) timebuf[0] = '\0'; if (d) - (void) sprintf(timebuf, + (void) snprintf(timebuf, timelen, "%llud%02lluh%02llum%02llus", d, h, m, s); else if (h) - (void) sprintf(timebuf, "%lluh%02llum%02llus", h, m, s); + (void) snprintf(timebuf, timelen, "%lluh%02llum%02llus", h, m, s); else if (m) - (void) sprintf(timebuf, "%llum%02llus", m, s); + (void) snprintf(timebuf, timelen, "%llum%02llus", m, s); else - (void) sprintf(timebuf, "%llus", s); + (void) snprintf(timebuf, timelen, "%llus", s); } static nvlist_t * @@ -5503,7 +5507,7 @@ main(int argc, char **argv) hrtime_t now = gethrtime(); now = MIN(now, zs->zs_proc_stop); - print_time(zs->zs_proc_stop - now, timebuf); + print_time(zs->zs_proc_stop - now, timebuf, sizeof(timebuf)); nicenum(zs->zs_space, numbuf); (void) printf("Pass %3d, %8s, %3llu ENOSPC, " @@ -5527,7 +5531,7 @@ main(int argc, char **argv) Dl_info dli; zi = &zs->zs_info[f]; - print_time(zi->zi_call_time, timebuf); + print_time(zi->zi_call_time, timebuf, sizeof(timebuf)); (void) dladdr((void *)zi->zi_func, &dli); (void) printf("%7llu %9s %s\n", (u_longlong_t)zi->zi_call_count, timebuf, Index: src/external/cddl/osnet/dist/lib/libdtrace/arm/dt_isadep.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/arm/dt_isadep.c:1.1 src/external/cddl/osnet/dist/lib/libdtrace/arm/dt_isadep.c:1.2 --- src/external/cddl/osnet/dist/lib/libdtrace/arm/dt_isadep.c:1.1 Fri Jun 21 15:16:00 2013 +++ src/external/cddl/osnet/dist/lib/libdtrace/arm/dt_isadep.c Thu Mar 27 11:50:48 2014 @@ -167,7 +167,7 @@ dt_pid_create_glob_offset_probes(struct char name[sizeof (i) * 2 + 1]; for (i = 0; i < symp->st_size; i += 4) { - (void) sprintf(name, "%lx", i); + (void) snprintf(name, sizeof(name), "%lx", i); if (gmatch(name, pattern)) ftp->ftps_offs[ftp->ftps_noffs++] = i; } Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_handle.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_handle.c:1.3 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_handle.c:1.4 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_handle.c:1.3 Sun Jan 12 12:49:30 2014 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_handle.c Thu Mar 27 11:50:48 2014 @@ -192,13 +192,13 @@ dt_handle_err(dtrace_hdl_t *dtp, dtrace_ str = (char *)alloca(len); if (err.dteda_action == 0) { - (void) sprintf(where, "predicate"); + (void) snprintf(where, sizeof(where), "predicate"); } else { - (void) sprintf(where, "action #%d", err.dteda_action); + (void) snprintf(where, sizeof(where), "action #%d", err.dteda_action); } if (err.dteda_offset != -1) { - (void) sprintf(offinfo, " at DIF offset %d", err.dteda_offset); + (void) snprintf(offinfo, sizeof(offinfo), " at DIF offset %d", err.dteda_offset); } else { offinfo[0] = 0; } @@ -207,7 +207,7 @@ dt_handle_err(dtrace_hdl_t *dtp, dtrace_ case DTRACEFLT_BADADDR: case DTRACEFLT_BADALIGN: case DTRACEFLT_BADSTACK: - (void) sprintf(details, " (0x%" PRIx64 ")", err.dteda_addr); + (void) snprintf(details, sizeof(details), " (0x%" PRIx64 ")", err.dteda_addr); break; default: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c:1.4 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c:1.5 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c:1.4 Sun Jan 12 12:49:30 2014 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c Thu Mar 27 11:50:48 2014 @@ -1496,7 +1496,8 @@ process_obj(dtrace_hdl_t *dtp, const cha (void) gelf_update_sym(data_sym, isym, &dsym); r = (char *)data_str->d_buf + istr; - istr += 1 + sprintf(r, dt_symfmt, + istr += 1 + snprintf(r, data_str->d_size - + (istr - (char *)data_str->d_buf), dt_symfmt, dt_symprefix, objkey, s); isym++; assert(isym <= nsym); Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.7 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.8 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.7 Sun Jan 12 12:49:30 2014 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c Thu Mar 27 11:50:48 2014 @@ -553,9 +553,9 @@ dt_write(dtrace_hdl_t *dtp, int fd, cons /* * This function handles all output from libdtrace, as well as the * dtrace_sprintf() case. If we're here due to dtrace_sprintf(), then - * dt_sprintf_buflen will be non-zero; in this case, we sprintf into the + * dt_sprintf_buflen will be non-zero; in this case, we snprintf into the * specified buffer and return. Otherwise, if output is buffered (denoted by - * a NULL fp), we sprintf the desired output into the buffered buffer + * a NULL fp), we snprintf the desired output into the buffered buffer * (expanding the buffer if required). If we don't satisfy either of these * conditions (that is, if we are to actually generate output), then we call * fprintf with the specified fp. In this case, we need to deal with one of Index: src/external/cddl/osnet/dist/lib/libzpool/common/util.c diff -u src/external/cddl/osnet/dist/lib/libzpool/common/util.c:1.1.1.1 src/external/cddl/osnet/dist/lib/libzpool/common/util.c:1.2 --- src/external/cddl/osnet/dist/lib/libzpool/common/util.c:1.1.1.1 Fri Aug 7 14:32:47 2009 +++ src/external/cddl/osnet/dist/lib/libzpool/common/util.c Thu Mar 27 11:50:48 2014 @@ -38,7 +38,7 @@ */ void -nicenum(uint64_t num, char *buf) +nicenum(uint64_t num, char *buf, size_t buflen) { uint64_t n = num; int index = 0; @@ -52,15 +52,15 @@ nicenum(uint64_t num, char *buf) u = " KMGTPE"[index]; if (index == 0) { - (void) sprintf(buf, "%llu", (u_longlong_t)n); + (void) snprintf(buf, buflen, "%llu", (u_longlong_t)n); } else if (n < 10 && (num & (num - 1)) != 0) { - (void) sprintf(buf, "%.2f%c", + (void) snprintf(buf, buflen, "%.2f%c", (double)num / (1ULL << 10 * index), u); } else if (n < 100 && (num & (num - 1)) != 0) { - (void) sprintf(buf, "%.1f%c", + (void) snprintf(buf, buflen, "%.1f%c", (double)num / (1ULL << 10 * index), u); } else { - (void) sprintf(buf, "%llu%c", (u_longlong_t)n, u); + (void) snprintf(buf, buflen, "%llu%c", (u_longlong_t)n, u); } } @@ -96,15 +96,15 @@ show_vdev_stats(const char *desc, const sec = MAX(1, vs->vs_timestamp / NANOSEC); - nicenum(vs->vs_alloc, used); - nicenum(vs->vs_space - vs->vs_alloc, avail); - nicenum(vs->vs_ops[ZIO_TYPE_READ] / sec, rops); - nicenum(vs->vs_ops[ZIO_TYPE_WRITE] / sec, wops); - nicenum(vs->vs_bytes[ZIO_TYPE_READ] / sec, rbytes); - nicenum(vs->vs_bytes[ZIO_TYPE_WRITE] / sec, wbytes); - nicenum(vs->vs_read_errors, rerr); - nicenum(vs->vs_write_errors, werr); - nicenum(vs->vs_checksum_errors, cerr); + nicenum(vs->vs_alloc, used, size(used)); + nicenum(vs->vs_space - vs->vs_alloc, avail, sizeof(avail)); + nicenum(vs->vs_ops[ZIO_TYPE_READ] / sec, rops, sizeof(rops)); + nicenum(vs->vs_ops[ZIO_TYPE_WRITE] / sec, wops, sizeof(wops)); + nicenum(vs->vs_bytes[ZIO_TYPE_READ] / sec, rbytes, sizeof(rbytes)); + nicenum(vs->vs_bytes[ZIO_TYPE_WRITE] / sec, wbytes, sizeof(wbytes)); + nicenum(vs->vs_read_errors, rerr, sizeof(rerr)); + nicenum(vs->vs_write_errors, werr, sizeof(werr)); + nicenum(vs->vs_checksum_errors, cerr, sizeof(cerr)); (void) printf("%*s%s%*s%*s%*s %5s %5s %5s %5s %5s %5s %5s\n", indent, "", Index: src/external/cddl/osnet/dist/tools/ctf/cvt/merge.c diff -u src/external/cddl/osnet/dist/tools/ctf/cvt/merge.c:1.3 src/external/cddl/osnet/dist/tools/ctf/cvt/merge.c:1.4 --- src/external/cddl/osnet/dist/tools/ctf/cvt/merge.c:1.3 Wed Feb 24 16:53:26 2010 +++ src/external/cddl/osnet/dist/tools/ctf/cvt/merge.c Thu Mar 27 11:50:48 2014 @@ -702,7 +702,8 @@ remap_node(tdesc_t **tgtp, tdesc_t *oldt } if ((template.t_id = get_mapping(mcd->md_ta, oldid)) == 0) - aborterr("failed to get mapping for tid %d <%x>\n", oldid, oldid); + aborterr("failed to get mapping for tid %d (%s) <%x>\n", oldid, + oldtgt->t_name, oldid); if (!hash_find(mcd->md_parent->td_idhash, (void *)&template, (void *)&tgt) && (!(mcd->md_flags & MCD_F_REFMERGE) || Index: src/external/cddl/osnet/dist/uts/common/dtrace/dtrace.c diff -u src/external/cddl/osnet/dist/uts/common/dtrace/dtrace.c:1.26 src/external/cddl/osnet/dist/uts/common/dtrace/dtrace.c:1.27 --- src/external/cddl/osnet/dist/uts/common/dtrace/dtrace.c:1.26 Thu Mar 6 21:37:16 2014 +++ src/external/cddl/osnet/dist/uts/common/dtrace/dtrace.c Thu Mar 27 11:50:48 2014 @@ -5641,7 +5641,7 @@ dtrace_action_breakpoint(dtrace_ecb_t *e ASSERT(probe != NULL); /* - * This is a poor man's (destitute man's?) sprintf(): we want to + * This is a poor man's (destitute man's?) snprintf(): we want to * print the provider name, module name, function name and name of * the probe, along with the hex address of the ECB with the breakpoint * action -- all of which we must place in the character buffer by Index: src/external/cddl/osnet/dist/uts/common/dtrace/fasttrap.c diff -u src/external/cddl/osnet/dist/uts/common/dtrace/fasttrap.c:1.3 src/external/cddl/osnet/dist/uts/common/dtrace/fasttrap.c:1.4 --- src/external/cddl/osnet/dist/uts/common/dtrace/fasttrap.c:1.3 Sat Feb 27 18:43:53 2010 +++ src/external/cddl/osnet/dist/uts/common/dtrace/fasttrap.c Thu Mar 27 11:50:48 2014 @@ -1578,7 +1578,7 @@ fasttrap_add_probe(fasttrap_probe_spec_t for (i = 0; i < pdata->ftps_noffs; i++) { char name_str[17]; - (void) sprintf(name_str, "%llx", + (void) snprintf(name_str, sizeof(name_str), "%llx", (unsigned long long)pdata->ftps_offs[i]); if (dtrace_probe_lookup(provider->ftp_provid, Index: src/external/cddl/osnet/dist/uts/common/fs/zfs/ddt.c diff -u src/external/cddl/osnet/dist/uts/common/fs/zfs/ddt.c:1.1.1.1 src/external/cddl/osnet/dist/uts/common/fs/zfs/ddt.c:1.2 --- src/external/cddl/osnet/dist/uts/common/fs/zfs/ddt.c:1.1.1.1 Sat Feb 27 17:31:38 2010 +++ src/external/cddl/osnet/dist/uts/common/fs/zfs/ddt.c Thu Mar 27 11:50:48 2014 @@ -56,7 +56,7 @@ ddt_object_create(ddt_t *ddt, enum ddt_t boolean_t prehash = zio_checksum_table[ddt->ddt_checksum].ci_dedup; char name[DDT_NAMELEN]; - ddt_object_name(ddt, type, class, name); + ddt_object_name(ddt, type, class, name, sizeof(name)); ASSERT(*objectp == 0); VERIFY(ddt_ops[type]->ddt_op_create(os, objectp, tx, prehash) == 0); @@ -79,7 +79,7 @@ ddt_object_destroy(ddt_t *ddt, enum ddt_ uint64_t *objectp = &ddt->ddt_object[type][class]; char name[DDT_NAMELEN]; - ddt_object_name(ddt, type, class, name); + ddt_object_name(ddt, type, class, name, sizeof(name)); ASSERT(*objectp != 0); ASSERT(ddt_object_count(ddt, type, class) == 0); @@ -97,7 +97,7 @@ ddt_object_load(ddt_t *ddt, enum ddt_typ char name[DDT_NAMELEN]; int error; - ddt_object_name(ddt, type, class, name); + ddt_object_name(ddt, type, class, name, sizeof(name)); error = zap_lookup(ddt->ddt_os, DMU_POOL_DIRECTORY_OBJECT, name, sizeof (uint64_t), 1, &ddt->ddt_object[type][class]); @@ -119,7 +119,7 @@ ddt_object_sync(ddt_t *ddt, enum ddt_typ { char name[DDT_NAMELEN]; - ddt_object_name(ddt, type, class, name); + ddt_object_name(ddt, type, class, name, sizeof(name)); VERIFY(zap_update(ddt->ddt_os, ddt->ddt_spa->spa_ddt_stat_object, name, sizeof (uint64_t), sizeof (ddt_histogram_t) / sizeof (uint64_t), @@ -195,9 +195,9 @@ ddt_object_exists(ddt_t *ddt, enum ddt_t void ddt_object_name(ddt_t *ddt, enum ddt_type type, enum ddt_class class, - char *name) + char *name, size_t namelen) { - (void) sprintf(name, DMU_POOL_DDT, + (void) snprintf(name, namelen, DMU_POOL_DDT, zio_checksum_table[ddt->ddt_checksum].ci_name, ddt_ops[type]->ddt_op_name, ddt_class_name[class]); } Index: src/external/cddl/osnet/dist/uts/common/fs/zfs/spa.c diff -u src/external/cddl/osnet/dist/uts/common/fs/zfs/spa.c:1.5 src/external/cddl/osnet/dist/uts/common/fs/zfs/spa.c:1.6 --- src/external/cddl/osnet/dist/uts/common/fs/zfs/spa.c:1.5 Sat Nov 19 21:54:25 2011 +++ src/external/cddl/osnet/dist/uts/common/fs/zfs/spa.c Thu Mar 27 11:50:48 2014 @@ -3731,10 +3731,10 @@ spa_vdev_attach(spa_t *spa, uint64_t gui * to make it distinguishable from newvd, and unopenable from now on. */ if (strcmp(oldvd->vdev_path, newvd->vdev_path) == 0) { + size_t plen = strlen(newvd->vdev_path) + 5; spa_strfree(oldvd->vdev_path); - oldvd->vdev_path = kmem_alloc(strlen(newvd->vdev_path) + 5, - KM_SLEEP); - (void) sprintf(oldvd->vdev_path, "%s/%s", + oldvd->vdev_path = kmem_alloc(plen, KM_SLEEP); + snprintf(oldvd->vdev_path, plen, "%s/%s", newvd->vdev_path, "old"); if (oldvd->vdev_devid != NULL) { spa_strfree(oldvd->vdev_devid); Index: src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c diff -u src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c:1.9 src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c:1.10 --- src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c:1.9 Mon Mar 17 05:37:41 2014 +++ src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c Thu Mar 27 11:50:48 2014 @@ -768,7 +768,7 @@ zfs_userspace_many(zfsvfs_t *zfsvfs, zfs */ static int id_to_fuidstr(zfsvfs_t *zfsvfs, const char *domain, uid_t rid, - char *buf, boolean_t addok) + char *buf, size_t buflen, boolean_t addok) { uint64_t fuid; int domainid = 0; @@ -779,7 +779,7 @@ id_to_fuidstr(zfsvfs_t *zfsvfs, const ch return (ENOENT); } fuid = FUID_ENCODE(domainid, rid); - (void) sprintf(buf, "%llx", (longlong_t)fuid); + (void) snprintf(buf, buflen, "%llx", (longlong_t)fuid); return (0); } @@ -800,7 +800,7 @@ zfs_userspace_one(zfsvfs_t *zfsvfs, zfs_ if (obj == 0) return (0); - err = id_to_fuidstr(zfsvfs, domain, rid, buf, B_FALSE); + err = id_to_fuidstr(zfsvfs, domain, rid, buf, sizeof(buf), FALSE); if (err) return (err); @@ -829,7 +829,7 @@ zfs_set_userquota(zfsvfs_t *zfsvfs, zfs_ objp = (type == ZFS_PROP_USERQUOTA) ? &zfsvfs->z_userquota_obj : &zfsvfs->z_groupquota_obj; - err = id_to_fuidstr(zfsvfs, domain, rid, buf, B_TRUE); + err = id_to_fuidstr(zfsvfs, domain, rid, buf, sizeof(buf), B_TRUE); if (err) return (err); fuid_dirtied = zfsvfs->z_fuid_dirty; @@ -884,7 +884,7 @@ zfs_usergroup_overquota(zfsvfs_t *zfsvfs if (quotaobj == 0 || zfsvfs->z_replay) return (B_FALSE); - (void) sprintf(buf, "%llx", (longlong_t)fuid); + (void) snprintf(buf, sizeof(buf), "%llx", (longlong_t)fuid); err = zap_lookup(zfsvfs->z_os, quotaobj, buf, 8, 1, "a); if (err != 0) return (B_FALSE); Index: src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_znode.c diff -u src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_znode.c:1.15 src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_znode.c:1.16 --- src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_znode.c:1.15 Mon Oct 21 11:31:26 2013 +++ src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_znode.c Thu Mar 27 11:50:48 2014 @@ -1683,7 +1683,8 @@ zfs_obj_to_path(objset_t *osp, uint64_t component[0] = '/'; if (is_xattrdir) { - (void) sprintf(component + 1, "<xattrdir>"); + (void) snprintf(component + 1, sizeof(component) - 1, + "<xattrdir>"); } else { error = zap_value_search(osp, pobj, obj, ZFS_DIRENT_OBJ(-1ULL), component + 1); Index: src/external/cddl/osnet/dist/uts/common/fs/zfs/zio.c diff -u src/external/cddl/osnet/dist/uts/common/fs/zfs/zio.c:1.3 src/external/cddl/osnet/dist/uts/common/fs/zfs/zio.c:1.4 --- src/external/cddl/osnet/dist/uts/common/fs/zfs/zio.c:1.3 Sat Feb 27 18:43:53 2010 +++ src/external/cddl/osnet/dist/uts/common/fs/zfs/zio.c Thu Mar 27 11:50:48 2014 @@ -132,12 +132,14 @@ zio_init(void) if (align != 0) { char name[36]; - (void) sprintf(name, "zio_buf_%lu", (ulong_t)size); + (void) snprintf(name, sizeof(name), "zio_buf_%lu", + (ulong_t)size); zio_buf_cache[c] = kmem_cache_create(name, size, align, NULL, NULL, NULL, NULL, NULL, size > zio_buf_debug_limit ? KMC_NODEBUG : 0); - (void) sprintf(name, "zio_data_buf_%lu", (ulong_t)size); + (void) snprintf(name, sizeof(name), "zio_data_buf_%lu", + (ulong_t)size); zio_data_buf_cache[c] = kmem_cache_create(name, size, align, NULL, NULL, NULL, NULL, data_alloc_arena, size > zio_buf_debug_limit ? KMC_NODEBUG : 0); Index: src/external/cddl/osnet/dist/uts/common/fs/zfs/zvol.c diff -u src/external/cddl/osnet/dist/uts/common/fs/zfs/zvol.c:1.4 src/external/cddl/osnet/dist/uts/common/fs/zfs/zvol.c:1.5 --- src/external/cddl/osnet/dist/uts/common/fs/zfs/zvol.c:1.4 Thu Jun 24 09:03:05 2010 +++ src/external/cddl/osnet/dist/uts/common/fs/zfs/zvol.c Thu Mar 27 11:50:48 2014 @@ -509,7 +509,7 @@ zvol_create_minor(const char *name) devpath = kmem_alloc(devpathlen, KM_SLEEP); /* Get full path to ZFS volume disk device */ - (void) sprintf(devpath, "%s/%s", ZVOL_FULL_DEV_DIR, name); + (void) snprintf(devpath, devpathlen, "%s/%s", ZVOL_FULL_DEV_DIR, name); error = lookupname(devpath, UIO_SYSSPACE, NULL, &vp); Index: src/external/cddl/osnet/dist/uts/common/fs/zfs/sys/ddt.h diff -u src/external/cddl/osnet/dist/uts/common/fs/zfs/sys/ddt.h:1.1.1.1 src/external/cddl/osnet/dist/uts/common/fs/zfs/sys/ddt.h:1.2 --- src/external/cddl/osnet/dist/uts/common/fs/zfs/sys/ddt.h:1.1.1.1 Sat Feb 27 17:31:46 2010 +++ src/external/cddl/osnet/dist/uts/common/fs/zfs/sys/ddt.h Thu Mar 27 11:50:48 2014 @@ -166,7 +166,7 @@ typedef struct ddt_ops { #define DDT_NAMELEN 80 extern void ddt_object_name(ddt_t *ddt, enum ddt_type type, - enum ddt_class class, char *name); + enum ddt_class class, char *name, size_t namelen); extern int ddt_object_walk(ddt_t *ddt, enum ddt_type type, enum ddt_class class, uint64_t *walk, ddt_entry_t *dde); extern uint64_t ddt_object_count(ddt_t *ddt, enum ddt_type type, Index: src/external/cddl/osnet/dist/uts/common/sys/cmn_err.h diff -u src/external/cddl/osnet/dist/uts/common/sys/cmn_err.h:1.1.1.1 src/external/cddl/osnet/dist/uts/common/sys/cmn_err.h:1.2 --- src/external/cddl/osnet/dist/uts/common/sys/cmn_err.h:1.1.1.1 Fri Feb 19 23:34:31 2010 +++ src/external/cddl/osnet/dist/uts/common/sys/cmn_err.h Thu Mar 27 11:50:48 2014 @@ -103,11 +103,6 @@ extern size_t snprintf(char *, size_t, c __KPRINTFLIKE(3); extern size_t vsnprintf(char *, size_t, const char *, __va_list) __KVPRINTFLIKE(3); -/*PRINTFLIKE2*/ -extern char *sprintf(char *, const char *, ...) - __KPRINTFLIKE(2); -extern char *vsprintf(char *, const char *, __va_list) - __KVPRINTFLIKE(2); /*PRINTFLIKE1*/ extern void panic(const char *, ...)