From owner-p4-projects@FreeBSD.ORG Fri Sep 30 14:00:29 2011 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1F1311065674; Fri, 30 Sep 2011 14:00:29 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D48BF1065675 for ; Fri, 30 Sep 2011 14:00:28 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id C18908FC18 for ; Fri, 30 Sep 2011 14:00:28 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id p8UE0S8Y071070 for ; Fri, 30 Sep 2011 14:00:28 GMT (envelope-from mjacob@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id p8UE0SVj071067 for perforce@freebsd.org; Fri, 30 Sep 2011 14:00:28 GMT (envelope-from mjacob@freebsd.org) Date: Fri, 30 Sep 2011 14:00:28 GMT Message-Id: <201109301400.p8UE0SVj071067@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to mjacob@freebsd.org using -f From: Matt Jacob To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 199527 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 30 Sep 2011 14:00:29 -0000 http://p4web.freebsd.org/@@199527?ac=10 Change 199527 by mjacob@mjacob-sandbox on 2011/09/30 13:59:49 IFC Affected files ... .. //depot/projects/mjacob-dev/Makefile.inc1#11 integrate .. //depot/projects/mjacob-dev/UPDATING#10 integrate .. //depot/projects/mjacob-dev/bin/ls/ls.1#3 integrate .. //depot/projects/mjacob-dev/bin/ls/ls.c#2 integrate .. //depot/projects/mjacob-dev/bin/ls/ls.h#2 integrate .. //depot/projects/mjacob-dev/bin/ls/print.c#2 integrate .. //depot/projects/mjacob-dev/bin/ps/extern.h#4 integrate .. //depot/projects/mjacob-dev/bin/ps/keyword.c#5 integrate .. //depot/projects/mjacob-dev/bin/ps/print.c#6 integrate .. //depot/projects/mjacob-dev/bin/ps/ps.c#4 integrate .. //depot/projects/mjacob-dev/bin/ps/ps.h#3 integrate .. //depot/projects/mjacob-dev/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_changelist.c#3 integrate .. //depot/projects/mjacob-dev/contrib/llvm/LICENSE.TXT#1 branch .. //depot/projects/mjacob-dev/contrib/llvm/lib/Support/COPYRIGHT.regex#1 branch .. //depot/projects/mjacob-dev/contrib/llvm/tools/clang/LICENSE.TXT#1 branch .. //depot/projects/mjacob-dev/crypto/openssh/ssh_namespace.h#3 integrate .. //depot/projects/mjacob-dev/etc/devd.conf#4 integrate .. //depot/projects/mjacob-dev/etc/mtree/BSD.include.dist#6 integrate .. //depot/projects/mjacob-dev/etc/mtree/BSD.usr.dist#4 integrate .. //depot/projects/mjacob-dev/etc/network.subr#6 integrate .. //depot/projects/mjacob-dev/gnu/usr.bin/groff/tmac/mdoc.local#6 integrate .. //depot/projects/mjacob-dev/include/Makefile#4 integrate .. //depot/projects/mjacob-dev/include/iso646.h#2 integrate .. //depot/projects/mjacob-dev/kerberos5/lib/libasn1/Makefile#2 integrate .. //depot/projects/mjacob-dev/kerberos5/lib/libgssapi_krb5/Makefile#2 integrate .. //depot/projects/mjacob-dev/kerberos5/lib/libgssapi_ntlm/Makefile#2 integrate .. //depot/projects/mjacob-dev/kerberos5/lib/libgssapi_spnego/Makefile#2 integrate .. //depot/projects/mjacob-dev/kerberos5/lib/libhdb/Makefile#2 integrate .. //depot/projects/mjacob-dev/kerberos5/lib/libheimntlm/Makefile#2 integrate .. //depot/projects/mjacob-dev/kerberos5/lib/libhx509/Makefile#2 integrate .. //depot/projects/mjacob-dev/kerberos5/lib/libkadm5clnt/Makefile#2 integrate .. //depot/projects/mjacob-dev/kerberos5/lib/libkadm5srv/Makefile#2 integrate .. //depot/projects/mjacob-dev/kerberos5/lib/libkafs5/Makefile#2 integrate .. //depot/projects/mjacob-dev/kerberos5/lib/libkrb5/Makefile#2 integrate .. //depot/projects/mjacob-dev/kerberos5/lib/libroken/Makefile#2 integrate .. //depot/projects/mjacob-dev/lib/libc/gen/devname.c#2 integrate .. //depot/projects/mjacob-dev/lib/libc/locale/isspace.3#2 integrate .. //depot/projects/mjacob-dev/lib/libfetch/common.c#3 integrate .. //depot/projects/mjacob-dev/lib/libfetch/common.h#2 integrate .. //depot/projects/mjacob-dev/lib/libfetch/fetch.3#2 integrate .. //depot/projects/mjacob-dev/lib/libfetch/fetch.c#2 integrate .. //depot/projects/mjacob-dev/lib/libfetch/fetch.h#2 integrate .. //depot/projects/mjacob-dev/lib/libfetch/file.c#3 integrate .. //depot/projects/mjacob-dev/lib/libfetch/ftp.c#4 integrate .. //depot/projects/mjacob-dev/lib/libfetch/http.c#3 integrate .. //depot/projects/mjacob-dev/lib/libusbhid/data.c#2 integrate .. //depot/projects/mjacob-dev/lib/libusbhid/parse.c#3 integrate .. //depot/projects/mjacob-dev/lib/libusbhid/usbhid.3#2 integrate .. //depot/projects/mjacob-dev/lib/libusbhid/usbhid.h#2 integrate .. //depot/projects/mjacob-dev/release/Makefile.sysinstall#5 integrate .. //depot/projects/mjacob-dev/sbin/fsdb/fsdbutil.c#2 integrate .. //depot/projects/mjacob-dev/sbin/hastctl/hastctl.c#7 integrate .. //depot/projects/mjacob-dev/sbin/hastd/activemap.c#4 integrate .. //depot/projects/mjacob-dev/sbin/hastd/control.c#7 integrate .. //depot/projects/mjacob-dev/sbin/hastd/ebuf.c#2 integrate .. //depot/projects/mjacob-dev/sbin/hastd/event.c#2 integrate .. //depot/projects/mjacob-dev/sbin/hastd/hast.conf.5#4 integrate .. //depot/projects/mjacob-dev/sbin/hastd/hast.h#5 integrate .. //depot/projects/mjacob-dev/sbin/hastd/hast_proto.c#4 integrate .. //depot/projects/mjacob-dev/sbin/hastd/hastd.c#7 integrate .. //depot/projects/mjacob-dev/sbin/hastd/hooks.c#4 integrate .. //depot/projects/mjacob-dev/sbin/hastd/metadata.c#2 integrate .. //depot/projects/mjacob-dev/sbin/hastd/nv.c#3 integrate .. //depot/projects/mjacob-dev/sbin/hastd/parse.y#6 integrate .. //depot/projects/mjacob-dev/sbin/hastd/pjdlog.c#5 integrate .. //depot/projects/mjacob-dev/sbin/hastd/primary.c#9 integrate .. //depot/projects/mjacob-dev/sbin/hastd/proto_tcp.c#2 integrate .. //depot/projects/mjacob-dev/sbin/hastd/rangelock.c#2 integrate .. //depot/projects/mjacob-dev/sbin/hastd/secondary.c#7 integrate .. //depot/projects/mjacob-dev/sbin/hastd/subr.c#7 integrate .. //depot/projects/mjacob-dev/sbin/hastd/synch.h#2 integrate .. //depot/projects/mjacob-dev/sbin/hastd/token.l#4 integrate .. //depot/projects/mjacob-dev/share/doc/Makefile#3 integrate .. //depot/projects/mjacob-dev/share/doc/llvm/Makefile#1 branch .. //depot/projects/mjacob-dev/share/doc/llvm/clang/Makefile#1 branch .. //depot/projects/mjacob-dev/share/examples/cvsup/stable-supfile#3 integrate .. //depot/projects/mjacob-dev/share/man/man4/smp.4#3 integrate .. //depot/projects/mjacob-dev/share/man/man7/build.7#5 integrate .. //depot/projects/mjacob-dev/share/man/man9/ifnet.9#3 integrate .. //depot/projects/mjacob-dev/share/misc/committers-ports.dot#8 integrate .. //depot/projects/mjacob-dev/share/misc/committers-src.dot#5 integrate .. //depot/projects/mjacob-dev/sys/arm/at91/at91_mci.c#2 integrate .. //depot/projects/mjacob-dev/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/mjacob-dev/sys/arm/at91/at91_rtc.c#2 integrate .. //depot/projects/mjacob-dev/sys/arm/at91/at91_spi.c#2 integrate .. //depot/projects/mjacob-dev/sys/arm/at91/at91_ssc.c#2 integrate .. //depot/projects/mjacob-dev/sys/arm/at91/at91_twi.c#2 integrate .. //depot/projects/mjacob-dev/sys/arm/at91/uart_dev_at91usart.c#4 integrate .. //depot/projects/mjacob-dev/sys/arm/econa/if_ece.c#2 integrate .. //depot/projects/mjacob-dev/sys/conf/newvers.sh#5 integrate .. //depot/projects/mjacob-dev/sys/dev/ahci/ahci.c#10 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ah_osdep.c#6 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ah_internal.h#10 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ah_regdomain.c#6 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c#7 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c#7 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5212/ar5112.c#3 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c#9 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5212/ar5212_beacon.c#4 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5212/ar5212_xmit.c#4 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5312/ar5312_attach.c#4 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c#11 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5416/ar5416_beacon.c#4 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar5416/ar5416_xmit.c#7 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar9001/ar9130_attach.c#4 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar9001/ar9160_attach.c#8 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c#9 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c#10 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/ath_hal/ar9002/ar9287_attach.c#5 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/if_ath.c#14 integrate .. //depot/projects/mjacob-dev/sys/dev/ath/if_athvar.h#10 integrate .. //depot/projects/mjacob-dev/sys/dev/mfi/mfi.c#5 integrate .. //depot/projects/mjacob-dev/sys/dev/mfi/mfivar.h#2 integrate .. //depot/projects/mjacob-dev/sys/dev/puc/pucdata.c#7 integrate .. //depot/projects/mjacob-dev/sys/dev/usb/input/uhid.c#6 integrate .. //depot/projects/mjacob-dev/sys/dev/usb/quirk/usb_quirk.c#6 integrate .. //depot/projects/mjacob-dev/sys/dev/usb/usbdevs#10 integrate .. //depot/projects/mjacob-dev/sys/ia64/ia64/pmap.c#9 integrate .. //depot/projects/mjacob-dev/sys/kern/kern_clock.c#4 integrate .. //depot/projects/mjacob-dev/sys/kern/kern_exec.c#7 integrate .. //depot/projects/mjacob-dev/sys/kern/subr_kdb.c#9 integrate .. //depot/projects/mjacob-dev/sys/kern/subr_syscall.c#2 integrate .. //depot/projects/mjacob-dev/sys/kern/uipc_usrreq.c#5 integrate .. //depot/projects/mjacob-dev/sys/modules/ipfw/Makefile#4 integrate .. //depot/projects/mjacob-dev/sys/net/raw_cb.h#2 integrate .. //depot/projects/mjacob-dev/sys/net/raw_usrreq.c#2 integrate .. //depot/projects/mjacob-dev/sys/net/route.c#8 integrate .. //depot/projects/mjacob-dev/sys/net/route.h#5 integrate .. //depot/projects/mjacob-dev/sys/net/rtsock.c#3 integrate .. //depot/projects/mjacob-dev/sys/netinet/ipfw/ip_fw_pfil.c#5 integrate .. //depot/projects/mjacob-dev/sys/powerpc/booke/pmap.c#9 integrate .. //depot/projects/mjacob-dev/sys/powerpc/powerpc/cpu.c#2 integrate .. //depot/projects/mjacob-dev/sys/sparc64/sparc64/pmap.c#11 integrate .. //depot/projects/mjacob-dev/sys/sys/param.h#11 integrate .. //depot/projects/mjacob-dev/sys/ufs/ffs/ffs_snapshot.c#4 integrate .. //depot/projects/mjacob-dev/sys/vm/vm_fault.c#7 integrate .. //depot/projects/mjacob-dev/sys/vm/vm_page.c#8 integrate .. //depot/projects/mjacob-dev/sys/vm/vm_page.h#7 integrate .. //depot/projects/mjacob-dev/tools/make_libdeps.sh#2 integrate .. //depot/projects/mjacob-dev/usr.bin/calendar/calendars/calendar.freebsd#7 integrate .. //depot/projects/mjacob-dev/usr.bin/compress/zopen.c#3 integrate .. //depot/projects/mjacob-dev/usr.bin/csup/diff.c#2 integrate .. //depot/projects/mjacob-dev/usr.bin/fetch/fetch.1#2 integrate .. //depot/projects/mjacob-dev/usr.bin/fetch/fetch.c#3 integrate .. //depot/projects/mjacob-dev/usr.bin/find/find.1#4 integrate .. //depot/projects/mjacob-dev/usr.bin/find/ls.c#3 integrate .. //depot/projects/mjacob-dev/usr.bin/fstat/fstat.1#3 integrate .. //depot/projects/mjacob-dev/usr.bin/fstat/fstat.c#4 integrate .. //depot/projects/mjacob-dev/usr.bin/gzip/zuncompress.c#3 integrate .. //depot/projects/mjacob-dev/usr.bin/script/script.1#3 integrate .. //depot/projects/mjacob-dev/usr.bin/script/script.c#3 integrate .. //depot/projects/mjacob-dev/usr.bin/usbhidaction/usbhidaction.1#2 integrate .. //depot/projects/mjacob-dev/usr.bin/usbhidaction/usbhidaction.c#3 integrate .. //depot/projects/mjacob-dev/usr.bin/usbhidctl/usbhid.c#3 integrate .. //depot/projects/mjacob-dev/usr.bin/usbhidctl/usbhidctl.1#2 integrate .. //depot/projects/mjacob-dev/usr.sbin/mfiutil/mfi_show.c#7 integrate .. //depot/projects/mjacob-dev/usr.sbin/pkg_install/add/main.c#4 integrate .. //depot/projects/mjacob-dev/usr.sbin/pstat/pstat.c#2 integrate Differences ... ==== //depot/projects/mjacob-dev/Makefile.inc1#11 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.702 2011/08/11 10:29:10 ru Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.703 2011/09/27 07:14:12 stas Exp $ # # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir @@ -1218,7 +1218,8 @@ gnu/lib/libgcc__L: lib/libc__L -_prebuild_libs= ${_kerberos5_lib_libasn1} ${_kerberos5_lib_libheimntlm} \ +_prebuild_libs= ${_kerberos5_lib_libasn1} ${_kerberos5_lib_libhdb} \ + ${_kerberos5_lib_libheimntlm} \ ${_kerberos5_lib_libhx509} ${_kerberos5_lib_libkrb5} \ ${_kerberos5_lib_libroken} \ lib/libbz2 lib/libcom_err lib/libcrypt \ @@ -1268,6 +1269,19 @@ _secure_lib= secure/lib .endif +.if ${MK_KERBEROS} != "no" +kerberos5/lib/libasn1__L: lib/libcom_err__L kerberos5/lib/libroken__L +kerberos5/lib/libhdb__L: kerberos5/lib/libasn1__L lib/libcom_err__L \ + kerberos5/lib/libkrb5__L kerberos5/lib/libroken__L +kerberos5/lib/libheimntlm__L: secure/lib/libcrypto__L kerberos5/lib/libkrb5__L +kerberos5/lib/libhx509__L: kerberos5/lib/libasn1__L lib/libcom_err__L \ + secure/lib/libcrypto__L kerberos5/lib/libroken__L +kerberos5/lib/libkrb5__L: kerberos5/lib/libasn1__L lib/libcom_err__L \ + lib/libcrypt__L secure/lib/libcrypto__L kerberos5/lib/libhx509__L \ + kerberos5/lib/libroken__L +kerberos5/lib/libroken__L: lib/libcrypt__L +.endif + .if ${MK_GSSAPI} != "no" _lib_libgssapi= lib/libgssapi .endif @@ -1279,6 +1293,7 @@ .if ${MK_KERBEROS} != "no" _kerberos5_lib= kerberos5/lib _kerberos5_lib_libasn1= kerberos5/lib/libasn1 +_kerberos5_lib_libhdb= kerberos5/lib/libhdb _kerberos5_lib_libkrb5= kerberos5/lib/libkrb5 _kerberos5_lib_libhx509= kerberos5/lib/libhx509 _kerberos5_lib_libroken= kerberos5/lib/libroken ==== //depot/projects/mjacob-dev/UPDATING#10 (text+ko) ==== @@ -9,8 +9,8 @@ Items affecting the ports and packages system can be found in /usr/ports/UPDATING. Please read that file before running portupgrade. -NOTE TO PEOPLE WHO THINK THAT FreeBSD 9.x IS SLOW: - FreeBSD 9.x has many debugging features turned on, in both the kernel +NOTE TO PEOPLE WHO THINK THAT FreeBSD 10.x IS SLOW: + FreeBSD 10.x has many debugging features turned on, in both the kernel and userland. These features attempt to detect incorrect use of system primitives, and encourage loud failure through extra sanity checking and fail stop semantics. They also substantially impact @@ -22,6 +22,10 @@ machines to maximize performance. (To disable malloc debugging, run ln -s aj /etc/malloc.conf.) +20110923: + The stable/9 branch created in subversion. This corresponds to the + RELENG_9 branch in CVS. + 20110913: This commit modifies vfs_register() so that it uses a hash calculation to set vfc_typenum, which is enabled by default. @@ -1502,4 +1506,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.702 2011/09/13 21:01:26 rmacklem Exp $ +$FreeBSD: src/UPDATING,v 1.703 2011/09/26 02:27:04 kensmith Exp $ ==== //depot/projects/mjacob-dev/bin/ls/ls.1#3 (text+ko) ==== @@ -30,9 +30,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)ls.1 8.7 (Berkeley) 7/29/94 -.\" $FreeBSD: src/bin/ls/ls.1,v 1.104 2011/05/13 16:29:57 pluknet Exp $ +.\" $FreeBSD: src/bin/ls/ls.1,v 1.105 2011/09/28 18:53:36 ed Exp $ .\" -.Dd April 4, 2008 +.Dd September 28, 2011 .Dt LS 1 .Os .Sh NAME @@ -357,8 +357,7 @@ the numeric ID's are displayed. .Pp If the file is a character special or block special file, -the major and minor device numbers for the file are displayed -in the size field. +the device number for the file is displayed in the size field. If the file is a symbolic link the pathname of the linked-to file is preceded by .Dq Li -> . ==== //depot/projects/mjacob-dev/bin/ls/ls.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/ls/ls.c,v 1.90 2010/02/08 15:42:55 jh Exp $"); +__FBSDID("$FreeBSD: src/bin/ls/ls.c,v 1.91 2011/09/28 18:53:36 ed Exp $"); #include #include @@ -563,7 +563,7 @@ long maxblock; u_long btotal, labelstrlen, maxinode, maxlen, maxnlink; u_long maxlabelstr; - u_int devstrlen; + u_int sizelen; int maxflags; gid_t maxgroup; uid_t maxuser; @@ -572,7 +572,6 @@ int entries, needstats; const char *user, *group; char *flags, *labelstr = NULL; - char buf[STRBUF_SIZEOF(u_quad_t) + 1]; char ngroup[STRBUF_SIZEOF(uid_t) + 1]; char nuser[STRBUF_SIZEOF(gid_t) + 1]; @@ -656,7 +655,8 @@ MAKENINES(maxsize); free(jinitmax); } - devstrlen = 0; + d.s_size = 0; + sizelen = 0; flags = NULL; for (cur = list, entries = 0; cur; cur = cur->fts_link) { if (cur->fts_info == FTS_ERR || cur->fts_info == FTS_NS) { @@ -796,14 +796,12 @@ np->group = &np->data[ulen + 1]; (void)strcpy(np->group, group); - if ((S_ISCHR(sp->st_mode) || - S_ISBLK(sp->st_mode)) && - devstrlen < DEVSTR_HEX_LEN) { - if (minor(sp->st_rdev) > 255 || - minor(sp->st_rdev) < 0) - devstrlen = DEVSTR_HEX_LEN; - else - devstrlen = DEVSTR_LEN; + if (S_ISCHR(sp->st_mode) || + S_ISBLK(sp->st_mode)) { + sizelen = snprintf(NULL, 0, + "%#jx", (uintmax_t)sp->st_rdev); + if (d.s_size < sizelen) + d.s_size = sizelen; } if (f_flags) { @@ -837,23 +835,16 @@ d.maxlen = maxlen; if (needstats) { d.btotal = btotal; - (void)snprintf(buf, sizeof(buf), "%lu", maxblock); - d.s_block = strlen(buf); + d.s_block = snprintf(NULL, 0, "%lu", maxblock); d.s_flags = maxflags; d.s_label = maxlabelstr; d.s_group = maxgroup; - (void)snprintf(buf, sizeof(buf), "%lu", maxinode); - d.s_inode = strlen(buf); - (void)snprintf(buf, sizeof(buf), "%lu", maxnlink); - d.s_nlink = strlen(buf); - if (f_humanval) - d.s_size = HUMANVALSTR_LEN; - else { - (void)snprintf(buf, sizeof(buf), "%ju", maxsize); - d.s_size = strlen(buf); - } - if (d.s_size < devstrlen) - d.s_size = devstrlen; + d.s_inode = snprintf(NULL, 0, "%lu", maxinode); + d.s_nlink = snprintf(NULL, 0, "%lu", maxnlink); + sizelen = f_humanval ? HUMANVALSTR_LEN : + snprintf(NULL, 0, "%ju", maxsize); + if (d.s_size < sizelen) + d.s_size = sizelen; d.s_user = maxuser; } printfcn(&d); ==== //depot/projects/mjacob-dev/bin/ls/ls.h#2 (text+ko) ==== @@ -30,14 +30,12 @@ * SUCH DAMAGE. * * from: @(#)ls.h 8.1 (Berkeley) 5/31/93 - * $FreeBSD: src/bin/ls/ls.h,v 1.24 2010/01/24 19:23:07 jh Exp $ + * $FreeBSD: src/bin/ls/ls.h,v 1.25 2011/09/28 18:53:36 ed Exp $ */ #define NO_PRINT 1 #define HUMANVALSTR_LEN 5 -#define DEVSTR_LEN 8 -#define DEVSTR_HEX_LEN 15 extern long blocksize; /* block size units */ ==== //depot/projects/mjacob-dev/bin/ls/print.c#2 (text+ko) ==== @@ -36,7 +36,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/ls/print.c,v 1.81 2010/01/24 19:23:07 jh Exp $"); +__FBSDID("$FreeBSD: src/bin/ls/print.c,v 1.82 2011/09/28 18:53:36 ed Exp $"); #include #include @@ -48,6 +48,7 @@ #include #include #include +#include #include #include #include @@ -351,16 +352,8 @@ static void printdev(size_t width, dev_t dev) { - char buf[DEVSTR_HEX_LEN + 1]; - if (minor(dev) > 255 || minor(dev) < 0) - (void)snprintf(buf, sizeof(buf), "%3d, 0x%08x", - major(dev), (u_int)minor(dev)); - else - (void)snprintf(buf, sizeof(buf), "%3d, %3d", - major(dev), minor(dev)); - - (void)printf("%*s ", (u_int)width, buf); + (void)printf("%#*jx ", (u_int)width, (uintmax_t)dev); } static void ==== //depot/projects/mjacob-dev/bin/ps/extern.h#4 (text+ko) ==== @@ -27,7 +27,7 @@ * SUCH DAMAGE. * * @(#)extern.h 8.3 (Berkeley) 4/2/94 - * $FreeBSD: src/bin/ps/extern.h,v 1.46 2011/06/14 16:50:16 trasz Exp $ + * $FreeBSD: src/bin/ps/extern.h,v 1.47 2011/09/29 06:31:42 trasz Exp $ */ struct kinfo; @@ -39,63 +39,52 @@ extern int cflag, eval, fscale, nlistread, rawcpu; extern unsigned long mempages; extern time_t now; -extern int showthreads, sumrusage, termwidth, totwidth; +extern int showthreads, sumrusage, termwidth; extern STAILQ_HEAD(velisthead, varent) varlist; __BEGIN_DECLS -void arguments(KINFO *, VARENT *); -void command(KINFO *, VARENT *); -void cputime(KINFO *, VARENT *); +char *arguments(KINFO *, VARENT *); +char *command(KINFO *, VARENT *); +char *cputime(KINFO *, VARENT *); int donlist(void); -void elapsed(KINFO *, VARENT *); -void elapseds(KINFO *, VARENT *); -void emulname(KINFO *, VARENT *); +char *elapsed(KINFO *, VARENT *); +char *elapseds(KINFO *, VARENT *); +char *emulname(KINFO *, VARENT *); VARENT *find_varentry(VAR *); const char *fmt_argv(char **, char *, size_t); double getpcpu(const KINFO *); -void kvar(KINFO *, VARENT *); -void label(KINFO *, VARENT *); -void loginclass(KINFO *, VARENT *); -void logname(KINFO *, VARENT *); -void longtname(KINFO *, VARENT *); -void lstarted(KINFO *, VARENT *); -void maxrss(KINFO *, VARENT *); -void lockname(KINFO *, VARENT *); -void mwchan(KINFO *, VARENT *); -void nwchan(KINFO *, VARENT *); -void pagein(KINFO *, VARENT *); +char *kvar(KINFO *, VARENT *); +char *label(KINFO *, VARENT *); +char *loginclass(KINFO *, VARENT *); +char *logname(KINFO *, VARENT *); +char *longtname(KINFO *, VARENT *); +char *lstarted(KINFO *, VARENT *); +char *maxrss(KINFO *, VARENT *); +char *lockname(KINFO *, VARENT *); +char *mwchan(KINFO *, VARENT *); +char *nwchan(KINFO *, VARENT *); +char *pagein(KINFO *, VARENT *); void parsefmt(const char *, int); -void pcpu(KINFO *, VARENT *); -void pmem(KINFO *, VARENT *); -void pri(KINFO *, VARENT *); +char *pcpu(KINFO *, VARENT *); +char *pmem(KINFO *, VARENT *); +char *pri(KINFO *, VARENT *); void printheader(void); -void priorityr(KINFO *, VARENT *); -void egroupname(KINFO *, VARENT *); -void rgroupname(KINFO *, VARENT *); -void runame(KINFO *, VARENT *); -void rvar(KINFO *, VARENT *); -int s_comm(KINFO *); -int s_cputime(KINFO *); -int s_label(KINFO *); -int s_loginclass(KINFO *); -int s_logname(KINFO *); -int s_egroupname(KINFO *); -int s_rgroupname(KINFO *); -int s_runame(KINFO *); -int s_systime(KINFO *); -int s_uname(KINFO *); -int s_usertime(KINFO *); +char *priorityr(KINFO *, VARENT *); +char *egroupname(KINFO *, VARENT *); +char *rgroupname(KINFO *, VARENT *); +char *runame(KINFO *, VARENT *); +char *rvar(KINFO *, VARENT *); void showkey(void); -void started(KINFO *, VARENT *); -void state(KINFO *, VARENT *); -void systime(KINFO *, VARENT *); -void tdev(KINFO *, VARENT *); -void tdnam(KINFO *, VARENT *); -void tname(KINFO *, VARENT *); -void ucomm(KINFO *, VARENT *); -void uname(KINFO *, VARENT *); -void upr(KINFO *, VARENT *); -void usertime(KINFO *, VARENT *); -void vsize(KINFO *, VARENT *); -void wchan(KINFO *, VARENT *); +char *started(KINFO *, VARENT *); +char *state(KINFO *, VARENT *); +char *systime(KINFO *, VARENT *); +char *tdev(KINFO *, VARENT *); +char *tdnam(KINFO *, VARENT *); +char *tname(KINFO *, VARENT *); +char *ucomm(KINFO *, VARENT *); +char *uname(KINFO *, VARENT *); +char *upr(KINFO *, VARENT *); +char *usertime(KINFO *, VARENT *); +char *vsize(KINFO *, VARENT *); +char *wchan(KINFO *, VARENT *); __END_DECLS ==== //depot/projects/mjacob-dev/bin/ps/keyword.c#5 (text+ko) ==== @@ -33,7 +33,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/ps/keyword.c,v 1.91 2011/07/18 20:06:15 bz Exp $"); +__FBSDID("$FreeBSD: src/bin/ps/keyword.c,v 1.92 2011/09/29 06:31:42 trasz Exp $"); #include #include @@ -57,178 +57,116 @@ #define KOFF(x) offsetof(struct kinfo_proc, x) #define ROFF(x) offsetof(struct rusage, x) -#define EMULLEN 13 /* enough for "FreeBSD ELF32" */ #define LWPFMT "d" -#define LWPLEN 6 #define NLWPFMT "d" -#define NLWPLEN 4 #define UIDFMT "u" -#define UIDLEN 5 #define PIDFMT "d" -#define PIDLEN 5 -#define USERLEN (MAXLOGNAME - 1) /* PLEASE KEEP THE TABLE BELOW SORTED ALPHABETICALLY!!! */ static VAR var[] = { - {"%cpu", "%CPU", NULL, 0, pcpu, NULL, 5, 0, CHAR, NULL, 0}, - {"%mem", "%MEM", NULL, 0, pmem, NULL, 4, 0, CHAR, NULL, 0}, - {"acflag", "ACFLG", NULL, 0, kvar, NULL, 3, KOFF(ki_acflag), USHORT, - "x", 0}, - {"acflg", "", "acflag", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"args", "COMMAND", NULL, COMM|LJUST|USER, arguments, NULL, 16, 0, + {"%cpu", "%CPU", NULL, 0, pcpu, 0, CHAR, NULL, 0}, + {"%mem", "%MEM", NULL, 0, pmem, 0, CHAR, NULL, 0}, + {"acflag", "ACFLG", NULL, 0, kvar, KOFF(ki_acflag), USHORT, "x", 0}, + {"acflg", "", "acflag", 0, NULL, 0, CHAR, NULL, 0}, + {"args", "COMMAND", NULL, COMM|LJUST|USER, arguments, 0, CHAR, NULL, 0}, - {"blocked", "", "sigmask", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"caught", "", "sigcatch", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"class", "CLASS", NULL, LJUST, loginclass, s_loginclass, - MAXLOGNAME-1, 0, CHAR, NULL, 0}, - {"comm", "COMMAND", NULL, LJUST, ucomm, s_comm, - COMMLEN + TDNAMLEN + 1, 0, CHAR, NULL, 0}, - {"command", "COMMAND", NULL, COMM|LJUST|USER, command, NULL, 16, 0, + {"blocked", "", "sigmask", 0, NULL, 0, CHAR, NULL, 0}, + {"caught", "", "sigcatch", 0, NULL, 0, CHAR, NULL, 0}, + {"class", "CLASS", NULL, LJUST, loginclass, 0, CHAR, NULL, 0}, + {"comm", "COMMAND", NULL, LJUST, ucomm, 0, CHAR, NULL, 0}, + {"command", "COMMAND", NULL, COMM|LJUST|USER, command, 0, CHAR, NULL, 0}, - {"cpu", "CPU", NULL, 0, kvar, NULL, 3, KOFF(ki_estcpu), UINT, "d", - 0}, - {"cputime", "", "time", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"egid", "", "gid", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"egroup", "", "group", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"emul", "EMUL", NULL, LJUST, emulname, NULL, EMULLEN, 0, CHAR, - NULL, 0}, - {"etime", "ELAPSED", NULL, USER, elapsed, NULL, 12, 0, CHAR, NULL, 0}, - {"etimes", "ELAPSED", NULL, USER, elapseds, NULL, 12, 0, CHAR, NULL, 0}, - {"euid", "", "uid", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"f", "F", NULL, 0, kvar, NULL, 8, KOFF(ki_flag), INT, "x", 0}, - {"flags", "", "f", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"gid", "GID", NULL, 0, kvar, NULL, UIDLEN, KOFF(ki_groups), - UINT, UIDFMT, 0}, - {"group", "GROUP", NULL, LJUST, egroupname, s_egroupname, - USERLEN, 0, CHAR, NULL, 0}, - {"ignored", "", "sigignore", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"inblk", "INBLK", NULL, USER, rvar, NULL, 4, ROFF(ru_inblock), LONG, - "ld", 0}, - {"inblock", "", "inblk", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"jid", "JID", NULL, 0, kvar, NULL, 6, KOFF(ki_jid), INT, "d", 0}, - {"jobc", "JOBC", NULL, 0, kvar, NULL, 4, KOFF(ki_jobc), SHORT, "d", - 0}, - {"ktrace", "KTRACE", NULL, 0, kvar, NULL, 8, KOFF(ki_traceflag), INT, - "x", 0}, - {"label", "LABEL", NULL, LJUST, label, s_label, SHRT_MAX, 0, CHAR, - NULL, 0}, - {"lim", "LIM", NULL, 0, maxrss, NULL, 5, 0, CHAR, NULL, 0}, - {"lockname", "LOCK", NULL, LJUST, lockname, NULL, 6, 0, CHAR, NULL, - 0}, - {"login", "LOGIN", NULL, LJUST, logname, s_logname, MAXLOGNAME-1, - 0, CHAR, NULL, 0}, - {"logname", "", "login", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"lstart", "STARTED", NULL, LJUST|USER, lstarted, NULL, 28, 0, CHAR, - NULL, 0}, - {"lwp", "LWP", NULL, 0, kvar, NULL, LWPLEN, KOFF(ki_tid), UINT, - LWPFMT, 0}, - {"majflt", "MAJFLT", NULL, USER, rvar, NULL, 4, ROFF(ru_majflt), - LONG, "ld", 0}, - {"minflt", "MINFLT", NULL, USER, rvar, NULL, 4, ROFF(ru_minflt), - LONG, "ld", 0}, - {"msgrcv", "MSGRCV", NULL, USER, rvar, NULL, 4, ROFF(ru_msgrcv), - LONG, "ld", 0}, - {"msgsnd", "MSGSND", NULL, USER, rvar, NULL, 4, ROFF(ru_msgsnd), - LONG, "ld", 0}, - {"mwchan", "MWCHAN", NULL, LJUST, mwchan, NULL, 6, 0, CHAR, NULL, 0}, - {"ni", "", "nice", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"nice", "NI", NULL, 0, kvar, NULL, 2, KOFF(ki_nice), CHAR, "d", - 0}, - {"nivcsw", "NIVCSW", NULL, USER, rvar, NULL, 5, ROFF(ru_nivcsw), - LONG, "ld", 0}, - {"nlwp", "NLWP", NULL, 0, kvar, NULL, NLWPLEN, KOFF(ki_numthreads), - UINT, NLWPFMT, 0}, - {"nsignals", "", "nsigs", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"nsigs", "NSIGS", NULL, USER, rvar, NULL, 4, ROFF(ru_nsignals), - LONG, "ld", 0}, - {"nswap", "NSWAP", NULL, USER, rvar, NULL, 4, ROFF(ru_nswap), - LONG, "ld", 0}, - {"nvcsw", "NVCSW", NULL, USER, rvar, NULL, 5, ROFF(ru_nvcsw), - LONG, "ld", 0}, - {"nwchan", "NWCHAN", NULL, LJUST, nwchan, NULL, sizeof(void *) * 2, 0, - CHAR, NULL, 0}, - {"oublk", "OUBLK", NULL, USER, rvar, NULL, 4, ROFF(ru_oublock), - LONG, "ld", 0}, - {"oublock", "", "oublk", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"paddr", "PADDR", NULL, 0, kvar, NULL, sizeof(void *) * 2, - KOFF(ki_paddr), KPTR, "lx", 0}, - {"pagein", "PAGEIN", NULL, USER, pagein, NULL, 6, 0, CHAR, NULL, 0}, - {"pcpu", "", "%cpu", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"pending", "", "sig", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"pgid", "PGID", NULL, 0, kvar, NULL, PIDLEN, KOFF(ki_pgid), UINT, - PIDFMT, 0}, - {"pid", "PID", NULL, 0, kvar, NULL, PIDLEN, KOFF(ki_pid), UINT, - PIDFMT, 0}, - {"pmem", "", "%mem", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"ppid", "PPID", NULL, 0, kvar, NULL, PIDLEN, KOFF(ki_ppid), UINT, - PIDFMT, 0}, - {"pri", "PRI", NULL, 0, pri, NULL, 3, 0, CHAR, NULL, 0}, - {"re", "RE", NULL, INF127, kvar, NULL, 3, KOFF(ki_swtime), UINT, "d", - 0}, - {"rgid", "RGID", NULL, 0, kvar, NULL, UIDLEN, KOFF(ki_rgid), - UINT, UIDFMT, 0}, - {"rgroup", "RGROUP", NULL, LJUST, rgroupname, s_rgroupname, - USERLEN, 0, CHAR, NULL, 0}, - {"rss", "RSS", NULL, 0, kvar, NULL, 6, KOFF(ki_rssize), PGTOK, "ld", 0}, - {"rtprio", "RTPRIO", NULL, 0, priorityr, NULL, 7, KOFF(ki_pri), CHAR, - NULL, 0}, - {"ruid", "RUID", NULL, 0, kvar, NULL, UIDLEN, KOFF(ki_ruid), - UINT, UIDFMT, 0}, - {"ruser", "RUSER", NULL, LJUST, runame, s_runame, USERLEN, - 0, CHAR, NULL, 0}, - {"sid", "SID", NULL, 0, kvar, NULL, PIDLEN, KOFF(ki_sid), UINT, - PIDFMT, 0}, - {"sig", "PENDING", NULL, 0, kvar, NULL, 8, KOFF(ki_siglist), INT, - "x", 0}, - {"sigcatch", "CAUGHT", NULL, 0, kvar, NULL, 8, KOFF(ki_sigcatch), + {"cpu", "CPU", NULL, 0, kvar, KOFF(ki_estcpu), UINT, "d", 0}, + {"cputime", "", "time", 0, NULL, 0, CHAR, NULL, 0}, + {"egid", "", "gid", 0, NULL, 0, CHAR, NULL, 0}, + {"egroup", "", "group", 0, NULL, 0, CHAR, NULL, 0}, + {"emul", "EMUL", NULL, LJUST, emulname, 0, CHAR, NULL, 0}, + {"etime", "ELAPSED", NULL, USER, elapsed, 0, CHAR, NULL, 0}, + {"etimes", "ELAPSED", NULL, USER, elapseds, 0, CHAR, NULL, 0}, + {"euid", "", "uid", 0, NULL, 0, CHAR, NULL, 0}, + {"f", "F", NULL, 0, kvar, KOFF(ki_flag), INT, "x", 0}, + {"flags", "", "f", 0, NULL, 0, CHAR, NULL, 0}, + {"gid", "GID", NULL, 0, kvar, KOFF(ki_groups), UINT, UIDFMT, 0}, + {"group", "GROUP", NULL, LJUST, egroupname, 0, CHAR, NULL, 0}, + {"ignored", "", "sigignore", 0, NULL, 0, CHAR, NULL, 0}, + {"inblk", "INBLK", NULL, USER, rvar, ROFF(ru_inblock), LONG, "ld", 0}, + {"inblock", "", "inblk", 0, NULL, 0, CHAR, NULL, 0}, + {"jid", "JID", NULL, 0, kvar, KOFF(ki_jid), INT, "d", 0}, + {"jobc", "JOBC", NULL, 0, kvar, KOFF(ki_jobc), SHORT, "d", 0}, + {"ktrace", "KTRACE", NULL, 0, kvar, KOFF(ki_traceflag), INT, "x", 0}, + {"label", "LABEL", NULL, LJUST, label, 0, CHAR, NULL, 0}, + {"lim", "LIM", NULL, 0, maxrss, 0, CHAR, NULL, 0}, + {"lockname", "LOCK", NULL, LJUST, lockname, 0, CHAR, NULL, 0}, + {"login", "LOGIN", NULL, LJUST, logname, 0, CHAR, NULL, 0}, + {"logname", "", "login", 0, NULL, 0, CHAR, NULL, 0}, + {"lstart", "STARTED", NULL, LJUST|USER, lstarted, 0, CHAR, NULL, 0}, + {"lwp", "LWP", NULL, 0, kvar, KOFF(ki_tid), UINT, LWPFMT, 0}, + {"majflt", "MAJFLT", NULL, USER, rvar, ROFF(ru_majflt), LONG, "ld", 0}, + {"minflt", "MINFLT", NULL, USER, rvar, ROFF(ru_minflt), LONG, "ld", 0}, + {"msgrcv", "MSGRCV", NULL, USER, rvar, ROFF(ru_msgrcv), LONG, "ld", 0}, + {"msgsnd", "MSGSND", NULL, USER, rvar, ROFF(ru_msgsnd), LONG, "ld", 0}, + {"mwchan", "MWCHAN", NULL, LJUST, mwchan, 0, CHAR, NULL, 0}, + {"ni", "", "nice", 0, NULL, 0, CHAR, NULL, 0}, + {"nice", "NI", NULL, 0, kvar, KOFF(ki_nice), CHAR, "d", 0}, + {"nivcsw", "NIVCSW", NULL, USER, rvar, ROFF(ru_nivcsw), LONG, "ld", 0}, + {"nlwp", "NLWP", NULL, 0, kvar, KOFF(ki_numthreads), UINT, NLWPFMT, 0}, + {"nsignals", "", "nsigs", 0, NULL, 0, CHAR, NULL, 0}, + {"nsigs", "NSIGS", NULL, USER, rvar, ROFF(ru_nsignals), LONG, "ld", 0}, + {"nswap", "NSWAP", NULL, USER, rvar, ROFF(ru_nswap), LONG, "ld", 0}, + {"nvcsw", "NVCSW", NULL, USER, rvar, ROFF(ru_nvcsw), LONG, "ld", 0}, + {"nwchan", "NWCHAN", NULL, LJUST, nwchan, 0, CHAR, NULL, 0}, + {"oublk", "OUBLK", NULL, USER, rvar, ROFF(ru_oublock), LONG, "ld", 0}, + {"oublock", "", "oublk", 0, NULL, 0, CHAR, NULL, 0}, + {"paddr", "PADDR", NULL, 0, kvar, KOFF(ki_paddr), KPTR, "lx", 0}, + {"pagein", "PAGEIN", NULL, USER, pagein, 0, CHAR, NULL, 0}, + {"pcpu", "", "%cpu", 0, NULL, 0, CHAR, NULL, 0}, + {"pending", "", "sig", 0, NULL, 0, CHAR, NULL, 0}, + {"pgid", "PGID", NULL, 0, kvar, KOFF(ki_pgid), UINT, PIDFMT, 0}, + {"pid", "PID", NULL, 0, kvar, KOFF(ki_pid), UINT, PIDFMT, 0}, + {"pmem", "", "%mem", 0, NULL, 0, CHAR, NULL, 0}, + {"ppid", "PPID", NULL, 0, kvar, KOFF(ki_ppid), UINT, PIDFMT, 0}, + {"pri", "PRI", NULL, 0, pri, 0, CHAR, NULL, 0}, + {"re", "RE", NULL, INF127, kvar, KOFF(ki_swtime), UINT, "d", 0}, + {"rgid", "RGID", NULL, 0, kvar, KOFF(ki_rgid), UINT, UIDFMT, 0}, + {"rgroup", "RGROUP", NULL, LJUST, rgroupname, 0, CHAR, NULL, 0}, + {"rss", "RSS", NULL, 0, kvar, KOFF(ki_rssize), PGTOK, "ld", 0}, + {"rtprio", "RTPRIO", NULL, 0, priorityr, KOFF(ki_pri), CHAR, NULL, 0}, + {"ruid", "RUID", NULL, 0, kvar, KOFF(ki_ruid), UINT, UIDFMT, 0}, + {"ruser", "RUSER", NULL, LJUST, runame, 0, CHAR, NULL, 0}, + {"sid", "SID", NULL, 0, kvar, KOFF(ki_sid), UINT, PIDFMT, 0}, + {"sig", "PENDING", NULL, 0, kvar, KOFF(ki_siglist), INT, "x", 0}, + {"sigcatch", "CAUGHT", NULL, 0, kvar, KOFF(ki_sigcatch), UINT, "x", 0}, + {"sigignore", "IGNORED", NULL, 0, kvar, KOFF(ki_sigignore), UINT, "x", 0}, - {"sigignore", "IGNORED", NULL, 0, kvar, NULL, 8, KOFF(ki_sigignore), - UINT, "x", 0}, - {"sigmask", "BLOCKED", NULL, 0, kvar, NULL, 8, KOFF(ki_sigmask), - UINT, "x", 0}, - {"sl", "SL", NULL, INF127, kvar, NULL, 3, KOFF(ki_slptime), UINT, "d", - 0}, - {"start", "STARTED", NULL, LJUST|USER, started, NULL, 7, 0, CHAR, NULL, - 0}, - {"stat", "", "state", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"state", "STAT", NULL, 0, state, NULL, 4, 0, CHAR, NULL, 0}, - {"svgid", "SVGID", NULL, 0, kvar, NULL, UIDLEN, KOFF(ki_svgid), - UINT, UIDFMT, 0}, - {"svuid", "SVUID", NULL, 0, kvar, NULL, UIDLEN, KOFF(ki_svuid), - UINT, UIDFMT, 0}, - {"systime", "SYSTIME", NULL, USER, systime, s_systime, 15, 0, CHAR, - NULL, 0}, - {"tdaddr", "TDADDR", NULL, 0, kvar, NULL, sizeof(void *) * 2, - KOFF(ki_tdaddr), KPTR, "lx", 0}, - {"tdev", "TDEV", NULL, 0, tdev, NULL, 5, 0, CHAR, NULL, 0}, - {"tdnam", "TDNAM", NULL, LJUST, tdnam, NULL, COMMLEN, 0, CHAR, NULL, 0}, - {"time", "TIME", NULL, USER, cputime, s_cputime, 15, 0, CHAR, - NULL, 0}, - {"tpgid", "TPGID", NULL, 0, kvar, NULL, 4, KOFF(ki_tpgid), UINT, - PIDFMT, 0}, - {"tsid", "TSID", NULL, 0, kvar, NULL, PIDLEN, KOFF(ki_tsid), UINT, - PIDFMT, 0}, - {"tsiz", "TSIZ", NULL, 0, kvar, NULL, 4, KOFF(ki_tsize), PGTOK, "ld", 0}, - {"tt", "TT ", NULL, 0, tname, NULL, 4, 0, CHAR, NULL, 0}, - {"tty", "TTY", NULL, LJUST, longtname, NULL, 8, 0, CHAR, NULL, 0}, - {"ucomm", "UCOMM", NULL, LJUST, ucomm, s_comm, - COMMLEN + TDNAMLEN + 1, 0, CHAR, NULL, 0}, - {"uid", "UID", NULL, 0, kvar, NULL, UIDLEN, KOFF(ki_uid), UINT, - UIDFMT, 0}, - {"upr", "UPR", NULL, 0, upr, NULL, 3, 0, CHAR, NULL, 0}, - {"uprocp", "UPROCP", NULL, 0, kvar, NULL, sizeof(void *) * 2, - KOFF(ki_paddr), KPTR, "lx", 0}, - {"user", "USER", NULL, LJUST, uname, s_uname, USERLEN, 0, CHAR, - NULL, 0}, - {"usertime", "USERTIME", NULL, USER, usertime, s_usertime, 15, 0, - CHAR, NULL, 0}, - {"usrpri", "", "upr", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"vsize", "", "vsz", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, - {"vsz", "VSZ", NULL, 0, vsize, NULL, 6, 0, CHAR, NULL, 0}, - {"wchan", "WCHAN", NULL, LJUST, wchan, NULL, 6, 0, CHAR, NULL, 0}, - {"xstat", "XSTAT", NULL, 0, kvar, NULL, 4, KOFF(ki_xstat), USHORT, - "x", 0}, - {"", NULL, NULL, 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, + {"sigmask", "BLOCKED", NULL, 0, kvar, KOFF(ki_sigmask), UINT, "x", 0}, + {"sl", "SL", NULL, INF127, kvar, KOFF(ki_slptime), UINT, "d", 0}, + {"start", "STARTED", NULL, LJUST|USER, started, 0, CHAR, NULL, 0}, + {"stat", "", "state", 0, NULL, 0, CHAR, NULL, 0}, + {"state", "STAT", NULL, LJUST, state, 0, CHAR, NULL, 0}, + {"svgid", "SVGID", NULL, 0, kvar, KOFF(ki_svgid), UINT, UIDFMT, 0}, + {"svuid", "SVUID", NULL, 0, kvar, KOFF(ki_svuid), UINT, UIDFMT, 0}, + {"systime", "SYSTIME", NULL, USER, systime, 0, CHAR, NULL, 0}, + {"tdaddr", "TDADDR", NULL, 0, kvar, KOFF(ki_tdaddr), KPTR, "lx", 0}, + {"tdev", "TDEV", NULL, 0, tdev, 0, CHAR, NULL, 0}, + {"tdnam", "TDNAM", NULL, LJUST, tdnam, 0, CHAR, NULL, 0}, + {"time", "TIME", NULL, USER, cputime, 0, CHAR, NULL, 0}, + {"tpgid", "TPGID", NULL, 0, kvar, KOFF(ki_tpgid), UINT, PIDFMT, 0}, + {"tsid", "TSID", NULL, 0, kvar, KOFF(ki_tsid), UINT, PIDFMT, 0}, + {"tsiz", "TSIZ", NULL, 0, kvar, KOFF(ki_tsize), PGTOK, "ld", 0}, + {"tt", "TT ", NULL, 0, tname, 0, CHAR, NULL, 0}, + {"tty", "TTY", NULL, LJUST, longtname, 0, CHAR, NULL, 0}, + {"ucomm", "UCOMM", NULL, LJUST, ucomm, 0, CHAR, NULL, 0}, + {"uid", "UID", NULL, 0, kvar, KOFF(ki_uid), UINT, UIDFMT, 0}, + {"upr", "UPR", NULL, 0, upr, 0, CHAR, NULL, 0}, + {"uprocp", "UPROCP", NULL, 0, kvar, KOFF(ki_paddr), KPTR, "lx", 0}, + {"user", "USER", NULL, LJUST, uname, 0, CHAR, NULL, 0}, + {"usertime", "USERTIME", NULL, USER, usertime, 0, CHAR, NULL, 0}, + {"usrpri", "", "upr", 0, NULL, 0, CHAR, NULL, 0}, + {"vsize", "", "vsz", 0, NULL, 0, CHAR, NULL, 0}, + {"vsz", "VSZ", NULL, 0, vsize, 0, CHAR, NULL, 0}, + {"wchan", "WCHAN", NULL, LJUST, wchan, 0, CHAR, NULL, 0}, + {"xstat", "XSTAT", NULL, 0, kvar, KOFF(ki_xstat), USHORT, "x", 0}, + {"", NULL, NULL, 0, NULL, 0, CHAR, NULL, 0}, }; void ==== //depot/projects/mjacob-dev/bin/ps/print.c#6 (text+ko) ==== @@ -34,7 +34,7 @@ #endif #include -__FBSDID("$FreeBSD: src/bin/ps/print.c,v 1.108 2011/07/18 20:06:15 bz Exp $"); +__FBSDID("$FreeBSD: src/bin/ps/print.c,v 1.110 2011/09/29 06:31:42 trasz Exp $"); #include #include @@ -64,6 +64,9 @@ #include "ps.h" +#define COMMAND_WIDTH 16 +#define ARGUMENTS_WIDTH 16 + #define ps_pgtok(a) (((a) * getpagesize()) / 1024) void @@ -93,53 +96,42 @@ (void)putchar('\n'); } -void +char * arguments(KINFO *k, VARENT *ve) { VAR *v; - int left; - char *cp, *vis_args; + char *vis_args; v = ve->var; if ((vis_args = malloc(strlen(k->ki_args) * 4 + 1)) == NULL) errx(1, "malloc failed"); strvis(vis_args, k->ki_args, VIS_TAB | VIS_NL | VIS_NOSLASH); - if (STAILQ_NEXT(ve, next_ve) == NULL) { - /* last field */ - if (termwidth == UNLIMITED) { - (void)printf("%s", vis_args); - } else { - left = termwidth - (totwidth - v->width); - if (left < 1) /* already wrapped, just use std width */ - left = v->width; - for (cp = vis_args; --left >= 0 && *cp != '\0';) - (void)putchar(*cp++); - } - } else { - (void)printf("%-*.*s", v->width, v->width, vis_args); - } - free(vis_args); + + if (STAILQ_NEXT(ve, next_ve) != NULL && strlen(vis_args) > ARGUMENTS_WIDTH) + vis_args[ARGUMENTS_WIDTH] = '\0'; + + return (vis_args); } -void +char * command(KINFO *k, VARENT *ve) { VAR *v; - int left; - char *cp, *vis_env, *vis_args; + char *vis_args, *vis_env, *str; v = ve->var; if (cflag) { /* If it is the last field, then don't pad */ if (STAILQ_NEXT(ve, next_ve) == NULL) { - if (k->ki_d.prefix) - (void)printf("%s", k->ki_d.prefix); - (void)printf("%s", k->ki_p->ki_comm); - if (showthreads && k->ki_p->ki_numthreads > 1) - (void)printf("/%s", k->ki_p->ki_tdname); + asprintf(&str, "%s%s%s%s", + k->ki_d.prefix ? k->ki_d.prefix : "", + k->ki_p->ki_comm, + (showthreads && k->ki_p->ki_numthreads > 1) ? "/" : "", + (showthreads && k->ki_p->ki_numthreads > 1) ? k->ki_p->ki_tdname : ""); } else - (void)printf("%-*s", v->width, k->ki_p->ki_comm); - return; + str = strdup(k->ki_p->ki_comm); + + return (str); } if ((vis_args = malloc(strlen(k->ki_args) * 4 + 1)) == NULL) errx(1, "malloc failed"); @@ -157,89 +149,84 @@ } else vis_env = NULL; - if (termwidth == UNLIMITED) { - if (k->ki_d.prefix) - (void)printf("%s", k->ki_d.prefix); - if (vis_env) - (void)printf("%s ", vis_env); - (void)printf("%s", vis_args); - } else { - left = termwidth - (totwidth - v->width); - if (left < 1) /* already wrapped, just use std width */ - left = v->width; - if ((cp = k->ki_d.prefix) != NULL) - while (--left >= 0 && *cp) - (void)putchar(*cp++); - if ((cp = vis_env) != NULL) { - while (--left >= 0 && *cp) - (void)putchar(*cp++); - if (--left >= 0) - putchar(' '); - } - for (cp = vis_args; --left >= 0 && *cp != '\0';) - (void)putchar(*cp++); - } + asprintf(&str, "%s%s%s%s", + k->ki_d.prefix ? k->ki_d.prefix : "", + vis_env ? vis_env : "", + vis_env ? " " : "", + vis_args); + if (vis_env != NULL) free(vis_env); - } else + free(vis_args); + } else { /* ki_d.prefix & ki_env aren't shown for interim fields */ - (void)printf("%-*.*s", v->width, v->width, vis_args); - free(vis_args); + str = vis_args; + + if (strlen(str) > COMMAND_WIDTH) + str[COMMAND_WIDTH] = '\0'; + } + + return (str); } -void +char * ucomm(KINFO *k, VARENT *ve) { - char tmpbuff[COMMLEN + TDNAMLEN + 2]; VAR *v; + char *str; v = ve->var; if (STAILQ_NEXT(ve, next_ve) == NULL) { /* last field, don't pad */ - if (k->ki_d.prefix) - (void)printf("%s", k->ki_d.prefix); - (void)printf("%s", k->ki_p->ki_comm); - if (showthreads && k->ki_p->ki_numthreads > 1) - printf("/%s", k->ki_p->ki_tdname); + asprintf(&str, "%s%s%s%s", + k->ki_d.prefix ? k->ki_d.prefix : "", + k->ki_p->ki_comm, + (showthreads && k->ki_p->ki_numthreads > 1) ? "/" : "", + (showthreads && k->ki_p->ki_numthreads > 1) ? k->ki_p->ki_tdname : ""); } else { - bzero(tmpbuff, sizeof(tmpbuff)); if (showthreads && k->ki_p->ki_numthreads > 1) - sprintf(tmpbuff, "%s/%s", k->ki_p->ki_comm, - k->ki_p->ki_tdname); + asprintf(&str, "%s/%s", k->ki_p->ki_comm, k->ki_p->ki_tdname); else - sprintf(tmpbuff, "%s", k->ki_p->ki_comm); - (void)printf("%-*s", v->width, tmpbuff); + str = strdup(k->ki_p->ki_comm); } + return (str); } -void >>> TRUNCATED FOR MAIL (1000 lines) <<<